Tuesday, 30 November 2010

Universities: Passing the Torch of Culture

«In this post I expose some thoughts about italian universities and italian politics. I hope to be not offensive, it's not my intention. I hope to stimulate a constructive dialog, giving my personal ideas and experiences as "experimental datas"»
Who wants to sit on my chair tomorrow?

In these days italian students are protesting against a new law for university. Googling a bit you can find some commentaries to the law (they're more understandable than law's text), wich can help you to get the more important features:

  1. universities could become foundations
  2. professors will give resignation when they'll become 70
  3. new professors will be recruit by a commission of 4 randomly choosen professors
  4. small universities will be encouraged to fuse themselfs

It doesn't sounds bad. But there are several "cut offs" in universities budgets, explicable only with a decision to reduce public financing. The "fight against barons" (this is a nickname used for more influents professors whom manage recruitings, balance, ecc.) will not be resolved in this way.
I appreciate these contestations, because they prove youths' interest about public life and public instruction. But these protests should be oriented to two more important points, instead to defend just the "status quo".

  1. Professors can be disheartened by University's Senate and could be fired
  2. New professors can be admited to a recruiting contest only if they are international figures (such as Andrew Tanenbaum, Dario Fo, Carlo Rubbia, ecc.) or they have a successfull 10-year curriculum in a company

Bruce Sterling wrote on its «The hacker crackdown» what he thinks what is universities' mission. Have you ever tried to think about it? What's the universities' mission? Sterling says it's «passing the torch of culture». It's true, but not complete. Universities must

  1. Prepare future managers
  2. Prepare future high technical staff
  3. Passing the torch of culture to future generations

In our universities, computer-science program isn't very updated: a new bachelor in CS, usally knows just Java and C/C++/PHP; knows just a bit about UNIX, doesn't know exactly what's a TCP/IP port; has difficulties to understand the differences between a process and a thread; he doesn't know how works ANT, Make and other usefull tools; he doesn't know anything about real-time systems and programming; he doesn't know anything about NO-SQL databases, sometimes neither they exist

This is unacceptable, because it's like an eletronic engeneer whom ignore microprocessors. This new bachelors have also difficulties to learn new languages and techniques.
There's many things to change in italian universities.
I hope this protest will not stop when money will return.

Friday, 26 November 2010

Sony snaps GNUStep and Objective-C

Again, I want to excuse me if I didn't write some news yesterday. Unluckly, there were some hard tasks to complete at work.

Are you serious?!
 A great news from Sony: its new project SNAP is launched and it will be based on the GNUStep framework. GNUStep is the free reimplementation of NeXTStep/OpenStep, a set of classes written in Objective-C back in the '90 by NeXT (Jobs's company which was later absorbed by Apple).
Why I'm so excited? Because Objective-C is a great language (I like it much than C/C++); OpenStep is a great framework (take a look to NSString; to NSArray and NSMutableArray. You'll like them); and because OpenStep is Cocoa's father... and Cocoa is Mac OS X's and iOS' base.

On SNAP's Manifesto I read that is focused to «modernize the framework and optimize it to target modern consumer electronic (CE) devices». But Sony says also

«These modern conveniences include such features as touch displays and 3D graphics»

This could means Sony will allow Objective-C/GNUStep also on their consoles, making easy to port a game from iPhone/iPad/Mac to PS3/PSP. Because, remember, bot PS3 and iOS use OpenGL EM as graphic library. It's a interesting prospective.
What will be the benefits of using Objective-C + GNUStep instead of C++?

  1. GNUStep is a wider standard library than C++
  2. Objective-C supports reflection
  3. Objective-C has a more elegant syntax
  4. Objective-C 2.0 has a garbage collector... if you want and where you want ;)

Obviously, there's also drawbacks:

  1. Objective-C is slower than C++ (just a bit, but it's slower)
  2. Many libraries are written in C++
  3. C++ has a better known syntax

Anyway it's another important step: Objective-C has a completely different way to think OOP (message passing, reflection) which is different (and more advanced) than C++. GNUStep is a big framework. I will be surprised if the Big Next Step (bad word joke ;)) in programming will be made by the "old" Objective-C instead than Java, C# or something else.

Wednesday, 24 November 2010

Meanwhile, in Microsoft Russia...

In USSR, Windows installs you

Nikolai Pryanishnikov, Microsoft Locale Director in Russia, says that

«We must bear in mind that Linux is not a Russian OS and, moreover, is at the end of its life cycle»

I am a bit disappointed by this statement: I always belived that Microsoft managers were smart enough to avoid some hazardous declarations. Says that «Linux is dieing» is a manifestation of ignorance.
Actually, GNU/Linux is a player to face in important environments such as

  • Embeded devices
  • Servers
  • Mobile phones with Android

I suppose mr. Pryanishnikov was talking about the desktop market, but he must understand that HIS statement is offensive for HIS company.
As president of Microsoft in Russia, Nikolai Pryanishnikov hasn't capacity to say everything he wants: he have to think well what he can he says and what he can't. A misunderstanding in business world can move billions of dollars. A good CEO will take the situation in his hands, to correct this clumsy sentence.
Mr. Pryanishnikov misses to report citations and, more important, to say something about the Google OS. It's right that it's not yet released and that its base (Google Chrome) is just at 8% of broswer market shares (source: Wikipedia). But wait: Android is at 25%, while Windows Phone is at 3% (source: Wikipedia) and mobile market is becoming more important than ever. If Mr. Pryanishnikov was a smart president, then he would know that HIS Chief Software Architect (Ray Ozzie) sent a memo less than a month ago where he talked about the new marked trends (mobile, cloud computing, ecc.). Ignore what says your Chief Software Architect is clearly self-defeating.
If GNU/Linux's zealots are annoying, then Microsoft's supporters aren't better. But a fanboy's rant is forgettable; a manager's rant in public is not.
Mr. Pryanishnikov must think very well where, when and what he says, giving some attention to the same market shares I found googling some minutes. If I can do, then he can too.

Tuesday, 23 November 2010

Chainsaw with Jigsaw

«Groovy!»
The Jigsaw Project is "java kernel"'s offspring: the idea of cutting off pieces from the JVM and from classpath to obtain a small "java kernel" able to download and install by itself all necessary packages and libraries.
We'll get Java with a 1M installer, no more. It will runs some small programs, such as a telnet client and clones of ls, cat, more, ecc. utilities. When you will create a Java application, the new JVM will automatically download all missing libraries.
I don't believe Jigsaw will resurrect the Java desktop, but there's some scenarios we must reflect about. In these days Apple is trying to integrate its desktop with its mobile solution. The Mac App Store and the iPhone App Store are similar ideas; the Mac Book's trackpad is the same multitouch device of iPhone's display; Mobile Me's services work as a glue between your different Apple devices. In this "extremely dynamic scenario", informations (e-mails, photos, music, calendars, ecc.) are always in your hand. Why no expand this scenario to applications? Why no expand this scenario to your copy and scores of Angry Birds, or your copy and save games of Rage, they'll runs everywhere, downloading just the necessary informations from the network? It's true you can't have a Crysis written in Java, but a «Monkey Island Series» yes. This concept of «Buy Once, Run Everywhere» could potentially kill a set of market stores (where's the difference between a PS3 and a XBOX 360 and a WII if a donwloaded game runs everywhere?) and makes me doubtful about this prospective. But there's some players that could be interested on platform indipendence.
I introduce you an example: I buyed "Diablo 2" some years ago for PC. Blizzard gives me the opportunity to dowload a version for Mac OS X spending no money. They did a good work and I appreciate its honesty. Porting a game is an hard work, but in Java is trivial. Game's world is moving from power-players to casual-gamers and casual games don't need high performances or fancy graphics.
Java Jigsaw Platform could be a big opportunity some years ago. Now, with this commercial pressure oriented to kill every kind of portability, I am non very confident that Java will emerge from desktop sea.