Social Network Workshop

Last week I was working with a local school about the topic of social network in education. Is funny since just a few months ago I had an email rejecting the fact of using Facebook in Education, and later on I even heard it from other people how Facebook is just a waste of time.

Of course I know that by that, what he meant is that their students usually use it for crap.

I am a long time user of Facebook and our group, TQVCancun is founded really in this Facebook group.  However, I also acknowledge and see all the crap that is ‘shared’ on facebook and I agree with that waste of time.

That said, is a new day and I think that is important that teachers stop behaving like we are in the 20’s and start for once taking the challenge and moving toward a digital life environment.

It sucks that is 2012, and most peope carry around Blackberries, and the SMS is a thing of the past, and everyone can have internet access cheaply, and even public transportation have wifi. Yet, we still behave in school as if nothing of that had to do with the class. They still using these stupid books, with outdated information and have a very low dynamics.

Funny enough, that was the week iBooks2 was introduced and the coversation about technology finally reaching education was reviewed.

The truth of the matter is that being involved in this education community such as OLPC is something that we really wish we could expand the idea of using computers to teach, not to teach about computers. And to once and for all break the digital barrier with the teachers and work as virtual community with digital presence and digtial awareness.

So lets get this straight, social networks are nothing new, virtual communities are all over the internet and tools exist focus to tackle the deficit of media to increment education. What I found however was interessting a wide range of talents from teachers that knew about the tools, to teachers that were so foreign to them and where basically already on thei way out.

As smart move from my part was giving a final survey to review the course where interesting things came to the surface, such as I lack patience to be a teacher. Which I agree. Thats why they are the teachers and I am the expert. Here is the full report.

Resultadoscurso

Other thing that I notice was the classic posture of blaming the government for not providing. While at the same time, not feeling to go the extra mile to achieve their teaching goals.

But the most disappointing part was the lack of original thought. This information, which was a lot, should have been able to spark some original ideas and share them online, or during the class. I hope they were not just shocked and these ideas and techniques put to use.

 

Advertisements

Things to thank in 2011

So the last post of the year as I will try to look back on my personal life. My achivements and things that I think are moving for the next year.

  • A whole year living in Cancun, nothing like chilling next to a beautiful beach. 
  • Flying to New York and watching the Wu-Tang Clan, Nas, Mobb Deep, Immortal technique etc 
  • Starting the certification for OpenOffice.org as well as the Internships 
  • Building a new tech community in Cancun with Tequilla Valley 
  • Becoming the technical lead for OLPC Mexico and country manager for FLISOL and Software Freedom Day 
  • Giving some PHD classes on free software

Some goals for new year include:

  • Expand the certification project to the rest of the world 
  • Moving back to Europe 
  • Going to ApacheCon and representing OpenOffice 
  • Consolidating a olpc group in sugar development in Cancun 
  • Push better quality and development community 
  • Finalize the OpenOffice guide and bring it up to par with the english version 
  • Give out a course on free software processes and environment for enterprise 
  • Follow the NBA and see Lebron James live game

#DevThursday the battle between languages (and editors)

Yesterday was my first #DevThursday in my hometown, and it was pretty good althought a bit amateurish. The big topic of discussion was the old battle of the languages. PHP vs Java and also VIM vs Emacs. Most of the developers were PHP and only one Java developer so the development of course was more on the venue of Development high impact sites an large communities where PHP rise as hugly popular and almost unmatched. Sure there are many development projects around Java but the popullarity of WordPress, Drupal, Joomla, Moodle and other communities working on code builted on PHP. On the enterprise side, Sugar CMS and other enterprises like Facebook basing most of their development on the popular language.

 Some of the arguments was the verbosity of Java, and the way JRE taxes the memory of most architectures and also how complex the language itself is.

PHP practicality to learn and deploy also makes it popular and viable as a business. The reputation Java on the enterprise has is also shun by how sucky the state of the enterprise is in Mexico.

C# and Microsoft was also mentioned including their Silverlight vs HTML5 argument about how Microsoft always seems to rely on the fud and how hard are the other platforms compared to them. At the same time, how most of this development become an issue when you need to debug and hack whatever the microsoft tools generate to them. Sure the tools save you time, but how much can they debug?

 This was the openner to the discusion about the text editors versus IDE and most specifically vim vs emacs. With Emacs being the biggest challenge but also being the most rewarding as a geek. Emacs legacy is one of the most talked about, the shortcut maze to perform almost everything you could imagine is like the wholy grail of the competent developer. While IDEs on the other hand usually confuse people as in developing for a language as devoting to an IDE. Something that shows the rookines about how real man behaves.

 

Software Freedom Day Cancun

Software Freedom Day Cancun

A couple of weeks ago we celebrated the Software Freedom Day in Cancun, the first SFD in that city. The development of the event was quite nice since we were able to capture most of the moments of the event and include things that have become a signature of the events from Tequila Valley Cancun including the “Freedom Cake” and some gifts to give out after each talk.

The event was well promoted and included things like TV broadcast of the event, development of new web application and even some streaming. 

Talks included new bleeding edge topics like Bitcoins, Git, and some more traditional topics like Creative commons and recomended books on cyberculture and hacker culture.

The idea of this event is step away from the traditional Linux OS and their application environment and learning more about the ideals that make software free. The opportunities and empowerement behind open technology and also inspire atendees to innovate.

Storify from “SFDCancun”


This was my talk on BitCoin, Ripple and P2P Banking under the Digital Economy conference. You can get the slides here.

And yes we got cake…

Freedom Cake

Monkeying around the line of hard and dynamic code

So a few months back I had a discussion about the difference of using the 3rd party binding across dynamic languages. This is nothing new, and there has been quite a few of these bridges. However I am not sure how much has these been taking up.

The conversation was a comparison between using C# or other languages like Ruby for .NET. Granted that this was not really a .NET conversation but rather on the options in coding under the same API or VM. The JAVA version of the conversation would have been between things like using Java to use JVM or using something like JRuby or the more rooted language Groovy.

So after this conversation I went to understand the question better. Is really a whole new language needed to use an API? Should we just start becoming language driven as opposed of API/VM driven? After all given the options out there, these seem like a viable option.

So I have two different roads, one was making easy things (dynamic approach) to hard languages (JAVA), and using hard languages on toolkits that are usually develop with dynamic languages (GTK). So I took a look at some of the following implementations:

  • Using Jython with SWING
  • Groovy cookbook and hello world
  • Gnome-Java
  • GTK in C
  • PyGTK

So here are some snippets about how to use Jython with SWING (Java GUI Toolkit).

from javax.swing import JFrame

JFrame(‘Hello, World!’, defaultCloseOperation=JFrame.EXIT_ON_CLOSE, size=(300, 300), locationRelativeTo=None).setVisible(True)

This simple two line code will generate already a window, label and action.

The next example is the opposite, and doing a Toolkit like GTK in Java language:

package button;

import org.gnome.gdk.Event;
import org.gnome.gtk.Button;
import org.gnome.gtk.Gtk;
import org.gnome.gtk.Label;
import org.gnome.gtk.VBox;
import org.gnome.gtk.VBox;
import org.gnome.gtk.Widget;
import org.gnome.gtk.Window;

public class ExamplePressMe
{
public static void main(String[] args) {
final Window w;
final VBox x;
final Label l;
final Button b;

Gtk.init(args);

w = new Window();
x = new VBox(false,3);
l = new Label(“Go ahead:nMake my day”);
x.add(l);
b = new Button(“Press me!”);
x.add(b);

b.connect(new Button.Clicked() {
public void onClicked(Button source) {
System.out.println(“I was clicked: ” + b.getLabel());
}
});
w.add(x);
w.setTitle(“Hello World”);
w.showAll();
w.connect(new Widnow.DeleteEvent() {
public boolean onDeleteEvent(Widget source, Event event) {
Gtk.mainQuit();
return false;
}
});

Gtk.main();
}
}

Pardon my verbosity but half is becaus of JAVA and half is because of GTK. However we can see here that is just a matter of declaring variables classes and execution. Now we move to the C version:

#include <gtk/gtk.h>

static void hello( GtkWidget *widget, gpointer data ) {
g_print (“Hello Worldn”);
}

static gboolean delete_event ( GtkWidget *widget, GdkEvent *event, gpointer data ) {
g_print (“delete event occurredn”);
return TRUE;
}

static void destroy ( GtkWidget *widget, gpointer data ) {
gtk_main_quit();
}

int main( int argc, char *argv[] ) {
GtkWidget *window;
GtkWidget *button;

gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, “delete-event”, G_CALLBACK (delete_event), NULL);
g_signal_connect (window, “destroy”, G_CALLBACK (destroy), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
button = gtk_button_new_with_label (“Hello GTK+”);
g_signal_connect (button, “clicked”, G_CALLBACK (hello), NULL);
g_signal_connect (button, “clicked”, G_CALLBACK (gtk_widget_destroy), window);
gtk_container_add (GTK_CONTAINER (window), button);
gtk_widget_show (button);
gtk_widget_show (window);
gtk_main ();

return 0;
}

 

The rise of the digital Government

During Campus party there was a great panel about the participation campaign with the government on topics such as governance, transparency, and the digital advocacy prepared with #InternetNecesario and #OpenACTA. As well as raising awareness with other important challenges which the community needs to work together to raise the issue to a national platform.

Things like the regulation of bandwith in the national telecomunication industry. With isssues such as why TELMEX, the telecomunication monopoly can’t really offer high bandwiths as opposed to other countries.

How part time ignorance and part time corruption from the regulatory parts have a very permisive ruling upon the regulation of information across the nation and trasparency still a far cry as well as huge ignorance around internet surveilance mechanisms.

In the upcoming #SoftwareFreedomDay also come as a great timing in which many issues are arising across the internet. Where talks such as the globalvoices unveils evidence of hard internet surveilance in Egypt during the revolution. Where France president Sarkozy made declarations about “Government being the only legitimate representative of the will of the people” during the #EG8 a few months back. Which put things in perspective after also thinking that government have a monopoly on violence since they hold the army.

Culturaly speaking the Mexican state of affairs has a very tamed society where they look up for the government to take care of them. A very contrarian culture compared to the liberal American society where they inheritely don’t trust the government. Besides that, is real that there are already movements like Wikileaks, LULSec and Anonymous which start doing digital protesting and whisle blowing.

The important point here is that the only REAL strangehold on government will come from an economic protest. So when digital protest and economic conspiracies match we would start seen a new level of forcing the government to act upon the will of the people.

But going back to the talk in Campus Party, @javierlivas took a somewhat extreme position on overthrow the current state of the government. Not just the president and legislators but current idea of how to handle democracy. An interesting point he mention a few times was that the organization for the current event was larger than the current effort to run the country. Which means that with the total ammount of people in the event would be more than enough to build this new government.

Unfortunately beside the ranting there wasn’t a clear proposal. But the idea of digital governments are nonetheless being worked upon. Digital governments are being structured at least by lasindias.coop which talk about this phyle societies that self govern and are economically sustainable to build a more participatory model of governing as opposed to the distributed model derived from old analog systems. Real proposals on how to build the new digital patriotism for a group that breath and live on the web is an idea that usually has been suggested with the Internet map and “if Facebook was a country” analogies.

But having a real Internet state,with means of earning a living through independent economic systems like BitCoins and embracing a new nationality that give you access to benefits such as education, professional advice as well as maybe other benefits could start becoming something that people might start considering. Unfortunately challenges such as the movement of non-digital assets such as servers, electricity and access might present issues to believe this offering.

I usually remember the talk that I got in high school when our teacher describe to us the system which the mormon religion works. Where the religious tax also give benefits to their followers and the church really acts as a more effcient cooperative system to expand economically.

The talk covered also the other view of participating with the government in this change on a gradual pace. But we still haven’t focus on enough social capital to make a movement at any level. Whenever is transformational or to enforce a gradual change, I think we got many things to work before we can make such changes.

As Software Freedom Day approaches things like own cloud and just ensuring our digital sovereignty will be at the center piece of the event. And topics like this one could become something important for thinking about and considering.

#CPMX startup conferences

I want to share some of the conferences and panels that took place at the 3rd edition of Campus Party in Mexico city. Great conferences were delivered althought it wasn’t the greatest ever there is definitely an improvement in the way they were documented and also some of the dynamics that were given. One of the things that I have seen failed and failed again is the lack of startups and this session seemed to be more focus on entrepreneurship. The same could be said about social media. However development has been less atractive and some might say that there was small to no development going on.

The need for creating digital assets such as development is something that we consider important to the goals of the digital economy. Creating systems and software that can indeed improve the stance of the current lifestyle.

Here are some of the conferences that stood out on the topic of devleopment:

 

First one was a conference more focused on the eduction of entrepreneurship and using FLOSS as tool to entrepreneurship than FLOSS itself. I didn’t really got what I was expecting which was more of the tools that every entrepreneur most have and pay attention to. Nor was about opportunities in FLOSS world to innovate and build startups which was also another thing I was very interested. However the talk did focused a lot of enterprising something in Mexico and the unique challenges and how to handle them. The valuable bits were about social entrepreneurship, getting to know people but implement systems to process and manage the company and how to quickly act upon.

Another talk on entrepreneurship was also the struggles that entrepreneurs usually face and some of the lessons that have been learned through out the experiences on the panelists. Some of these we have already shared in our weekly geek meetups. Things like, understand capital, think globally and innovate fixing things that others haven’t done so. Also think on a more pro-active way on supplying and addressing the issues that everyone might have. Think in english and relate yourself with people world wide, not just on your national or regional language.

Other panels also talk about the issue of funding and the resources available nationally and internationally. How many of these fundings are for the right kind of startup and who can actually reach them. Not just the classic, look how much funding there is, but also how hard and unreal is such funding for the digital startups and most of the innovation comes through. Conference starts on minute 21.

Finally there was another entrepreneurial talk “off-campus” but that goes more close to home in my hometown. About entrpreneurship about not overcomplicate too much with our ideas and how to treat them.

The thing I recomend was about trying to broad the conversation with other entpreneurs as well as how to watch the innovation from other companies. Researching lots of startups and reading books on startup as well as podcast channels such as This week in Startup where you can learn how to evaluate ideas and how to know what are the parameters on think about startups.