Argentina has its own Linux distro

And it’s called UTUTO:

UTUTO es una distribución de GNU/Linux, denominada en referencia a una lagartilla o Geco así conocido en el norte de Argentina Su primera versión, grabada masivamente por primera vez en octubre del año 2000 en Argentina por Diego Saravia de la Universidad Nacional de Salta, era muy simple de utilizar y funcionaba desde CD-ROM sin necesidad de instalación. Fue una de las primeras lives del planeta. ISBN 987-9381-06-8. Declarado de Interes Nacional por la Honorable Camara de Diputados de la Nación Argentina

This year’s programming languages

Trying to keep my promise of learning a new programming language every year, I have identified a couple of candidates for 2007:

In any case, I want to get my hands dirtier with functional programming. And also, in the meanwhile, getting used to the new versions of old friends, both bringing new and interesting features:

If you have any suggestions, about other programming languages, do not hesitate to tell me in the comments below!

Are you ready for Vista?

http://www.theregister.com/2007/01/29/windows_vista_still_not_ready/

Fortunately, Microsoft has a web site devoted to answering these questions, although it takes the ludicrously arrogant stance of informing potential punters whether or not they are ready for Vista, rather than the other way round. It’s quite irritating, actually, because the only question that needs answering is whether MS and partners have enough device drivers handy and have exorcised enough of the bugs from this bloatware monster to enable it to run properly on the equipment that most users have got. Remember, we call it an “operating system”, not an “operated system”, for a reason: it’s the OS’s duty to run your machine, not your machine’s duty to run the OS – but just try making that point to a Microserf.

Migration

I came accross this interesting posting on The .NET Addict’s Blog. It is interesting to read since it comes at a time where “traditional” Microsoft developers get interested in other technologies, such as Ruby on Rails, Cocoa or Linux. And the same can be said about Java, where lots of luminaries like James Duncan Davidson (the creator of Ant and Tomcat) started moving towards other technologies (in his case, this happened at the beginning of this decade even).

Traditionally Microsoft has had a very strong relationship with their developers, since they are the ones that create the applications, that ultimately drive the sales of Windows, whatever the version. But more and more, developers are discovering new ways to do things. And when developers open their minds, it means that the next generation of project managers, architects and CIOs will change the shape of industry; this is a slow process, but a steady one. At the end, some technologies will prevail, others will fail.

There is a big change going on. But what are the common traits of the technologies that attract developers? Continue reading

Now, wait a second:

There was a time where programming in Java was funnier than it is today.

Back in 1997 I published in my own web page my first Java applet. It was a calculator. That was way cool; I was able to share with the visitors of my site a whole program: not only the source code, but the whole thing, working, available for anyone to use, no matter the browser, no matter the platform, no matter whe geographical location.

You can play with that applet here. It still works on my MacBook and on my G5, almost 10 years later, running under the Java 1.5 virtual machine. I am simply amazed (It might not be the most interesting code you’ll ever see, nor the most beautifully architectured one, but it did what I wanted it to do… so I consider it a success. Thankfully I see things different now).

So there was a time were Java was cool, new, easy to learn, the way to go. And here’s a story to show how cool it was. Continue reading

How to Grab (or Capture) your Screen with Cocoa?

Lately I got curious to know how could I grab the entire desktop of my computer, and save it into a file, or display it into an NSImageView component. I started to look around on the web and discovered that:

  • There’s no direct support for that in Cocoa
  • There’s a lot of different ways to do it, both supported and unsupported, cross-processor and not, easy and complicated

I have found several useful resources in my quest, like this one, this other one, and finally this one. But what I wanted most was a complete application to play with, so what I did is to put all the different implementations I’ve found in one single application, called “ScreenshotDemo”:

Amazingly, the approach that seems the ugliest turned to be the most appropriate, that is, using an NSTask instance wrapping the /usr/sbin/screencapture utility. With it, the application feels lighter, easier to maintain, in the true, purest Unix style: using a collection of small utilities, all chained one to the other, is better than having an overbloated tool that does everything, but just bad.

You can just download the (universal) binaries and the source code from the ScreenshotDemo Project page.

By the way, for those that would like to do the same in C#, like me :) just check out this code. It isn’t much easier in .NET, as you can see ;)

And last but not least, here’s how to do it in wxWidgets, explained by Julian Smart, the creator of this incredible library.

LIFT 07

The good news of the day: I have just received a free ticket to go to LIFT 07, defined as

a gathering of talented observers, explorers, and builders who discuss the current challenges and creative solutions presented by emerging technologies. LIFT is three days to face cutting edge business models, bold predictions, radical thinking, and get new ideas to inject into your own part of the planet.

Are you going there too? Just let me know!

Some .NET Code

I just updated the Projects subsection of this site with some .NET code that I wrote, between 2003 and 2006:

  • OrugaSystem: The OrugaSystem project came to my mind first as an HTML <--> RTF converter, but later evolved into a generic transformer framework; it was created with Visual Studio .NET 2003, and it runs under the .NET Framework, version 1.1.
  • .NET 2.0 Samples: I created these applications for illustrating some aspects about .NET 2.0: ADO.NET 2.0 Providers, ClickOnce, BackgroundWorker, C# Generics, FileSystemWatcher component, StringBuilder, Unit Testing, and the MultiView component. There is a little bit of everything, from command-line applications to Windows Services and fully distributed architectures. These applications were written using Visual Studio 2005, and run under the .NET Framework, version 2.0.

Have fun! :)