Archive

Archive for the ‘future’ Category

Poke Life And Something Will Pop Out: Steve Jobs

November 5th, 2011 Comments off

I have been going through my photographs from my October 2011 California trip. It is time to share and poke life. (See below for Dennis Ritchie)

 

Here’s a guy that revolutionised the computer industry, the music industry, the motion picture industry, the telephone industry. There’s four, and maybe more. That’s impact.

Robert Cringely

 

“When you grow up you tend to get told that the world is [just] the way it is and your life is just to live your life inside the world. Try not bash into the walls too much. Try to have a nice family life. Have fun, and save a little money.”

“That’s a very limited life. Life can be much broader, once you discover one simple fact, and that is, everything around that you call life, was made up by people who were no smarter than you. And you can change it, you can influence it. You can build your own things that other people can use. Once you learn that you will never be the same again.”

“The minute that you understand that you can poke life and actually …you can push it in, something will pop out [on] the other side. You change [it], you can mould it. That’s maybe the most important thing.”

Steve Jobs, 1994

 

He’s going to inspire a whole new generation.

Will.i.am, The Black Eye Peas

 

Steve Jobs Memorial

San Francisco Apple Store: “Hey Steve. See you around ok? Hopefully not soon. Thanks”. As Steve Jobs himself stated in the Reed College address that even people who want to go heaven, don’t want to die to get there.

 

DSCF2940

Emotions run high at the Apple Store, San Francisco. People do care and empathise with former CEO and Chairman of Apple.

 

Steve Jobs Memorial

Memorials for Steve Jobs at Apple’s San Francisco store on Thursday 6th October 2011, the last day of JavaOne conference.

 

Steve Jobs Memorial

I wrote two and drew my post-it notes as a personal tribute. I did it in the evening on the way to dinner and walking back to Villa Florence Hotel.

 

Steve Jobs Memorial

Poignant tributes that existed until 7th October 2011, until a violent hooligan lost the plot, and vandalised the people’s memorial. [The vandal voiced his ire, "What did f**king Steve Jobs ever do for me? I am f***ing poor and an American. This f**king computers are expensive! I can’t afford them! F*** Steve Jobs!"]

 

Steve Jobs Memorial

A lone candle burns on the street corner in SF

 

Steve Jobs Memorial

Tasteless or tact? I was reminded of our own Princess Diana’s sudden death in 1997. The irony was this similar brood affair was taking place in California, whilst I was attending, and speaking at a JavaOne conference. It was not lost on us, that we human do care enough, and we were sorry for Steve Jobs passing. I think this is what the focus on user experience and putting the user first can ultimately give you.

 

The British have a Royal family, so it was peculiar to see such an emotional event taking place in America. What is fascinating is that the respect and the time all of the onlookers took I to write their post-it notes. Where as the former HRH and Princess of Wales had lots of beautiful and oftentimes deep sentimental floral tributes strewn outside Buckingham Palace, much of it sadden a national by such unexpected loss. This time it was the tech aficionados of the entire world made the Apple Store’s nearest to them as places of homage and peace. Many of post-it notes were written by tourists, travellers, and conference attendees, in foreign languages in San Francisco and everyday fans of one or the other Apple consumer products, and the murals were all eloquent. I also never expected Steve Jobs to pass so suddenly, I too thought that he had a lot more time than he had. I for one will always remember this significant JavaOne conference and my time in America.

Overall, October was a sad time also for the passing of Dennis Ritchie, who co-created the programming language C and helped build the foundation of the modern day UNIX operating system. If Steve Jobs was uber important, then Dennis was a mega important. Without his insight in to turning out a easier programming language than, the then, assembly code, then we would still standing still in the dark ages of computers software engineering practice and methodology. Dennis Ritchie foresight was all of our gain. The turning of the tide. It was his creation of C the programming language that influenced Java the programming language and, of course, Objective C the lingua franca of Apple’s iOS native platform, through its popularisation under Steve Job’s NeXT operating system NeXSTSTEP. Other strands of that tree of C inspired Bjarne Stroustrup effort with C++ ( C with classes) and thus ushered in the field of Object Oriented Programming to the mainstream.

Both Steve Paul Jobs and Dennis MacAlistair Ritchie will be missed.

JavaOne 2011 Wrap Up

October 10th, 2011 2 comments

Wow! What a week it has been in California at JavaOne.

[FULL VERSION – After the crash of flaming Microsoft Live Writer, I recovered and improved this blog entry.]

 

JavaOne 2011

View from Hotel Nikko upper level looking down on the Mason Street Buzz Cafe, Chill Out Area

The biggest news of the event were the announcement of the JavaFX 2.0 release, and the new initiatives for Java EE 7 taking it to the Cloud. I spent most of my time schedule at the JavaFX 2.0 sessions, I did however hope over to see a number of the Java Performance tuning talks. I went on the Monday to Charlie Hunt’s talk on the JVM HotSpot Optimisation flags and also to Sunny Chan’s Performance Tuning for Low Latency. There was also a JavaFX performance tuning talk.

JavaOne 2011 was a very busy schedule, there is also some session that I wanted to go to, especially on Monday, when my talk on Progressive JavaFX 2.0 was scheduled. The conversations with people in the hallway were also a highlight.

 

Progressive JavaFX Talk

I know a number of you are waiting for my slides. I gave to the audio/visual guy at the event, but I still publish improved slides here and probably on Slide Share or the other presentation online service. The code example will be tidied. I have a couple days more in California,  before I fly back to the UK. Meanwhile, I am currently still processing some additional ideas for my Progressive JavaFX talk on Thursday 13th, Oracle Redwood City Shore office at the Silicon Valley JavaFX User Group. Stay tuned.

 

JavaOne 2011

[R] Dave Booth with Zero Turnaround’s Duke Award

 

JavaFX 2.0

 

Oracle have listened to the JavaFX community by making a public commitment to release the entire runtime, components and library as an open source project. It is currently documented in the JavaFX Roadmap. I believe this is a fantastic result, and shows that Oracle can be trusted to deliver software when they say it is going to be delivered. This is different mantra, business operation to Sun Microsystems, who would write these fabulous JavaOne demonstrations that were so wonderful, the early rich client Java2D / AWT example of the Flickr client, springs to mind (circa 2006) and then would never release the code, or do anything production with it.

Consider the mess that is Microsoft Silverlight, which is the alternative rich user interface technology aimed for the Dot Net platform. Scott Barnes was quite scathing in his blog entry about being one of SliverLight’s original custodian. Seriously, I am very pleased that I did not fly all the way to California, to the Oracle Java mecca conference and hear that JavaFX is dead. You do not know how happy I am.

I was even more pleased to see JavaFX running, albeit with no performance or production worthiness on the Apple iPad and Android device.

 

 

JavaOne 2011

[L] Adam Bein, Java Champion and author of Java EE 6 Night Hacks

 

I was quoted by Cay Horstman [of Core Java book fame] on the Java.net Day 4 blogging of the JavaOne 2011. Yes it is true that many years ago, Chris Oliver’s pet project, Form-Follows-Function was complete open source and so much so that a [unknown] community member did port to Android 1.x in 2008. Sun Microsystems brought the door on the runtime and controls, but kept the compiler outside and open. This is the reason that Stephen Chin and Eric Smith can continue its legacy with Visage.

 

Java Futures JDK 8 and JDK 9

 

I thought that the Mark Reinhold announcement of JDK 8 moving to 2013 and that Oracle should be aiming for more realistic two year cycle to be admirable.  In the past, JDK release have slipped beyond the eighteen months to years.

Mark Reinhold did mention that it leaves more time, if possible, for JVM convergence. In particular, if Java is going to taken serious on more than just the Desktop Profile, then the SE (Standard Edition) badly needs the following sensor API added:

  1. Multi-touch screen
  2. Global Position System
  3. Magnetometry
  4. Linear Motion and Acceleration
  5. Digital Camera support
  6. Multiple display screen resolution, orientation and capabilities
  7. Bluetooth
  8. Universal Serial Bus

If Oracle and more importantly OpenJDK project can deliver the first four then we are good. All of the above would be fantastic. Also remember that the JDK 8 is going to be modularised, the benefit being that this fictional “sensor” module can be split into high level and low level.

 

 

JavaOne 2011

[L] Jim Weaver and [R] Johan Vos

 

The other parts of JDK 8 for me personally were less interesting. We all know that JDK 8 will bring Lambda functions and expressions; and Jigsaw. These are huge changes and it is important that the OpenJDK team member cook and brew a soup that we can all manage.

Many leading Java engineers, developers and designers in the community have looked beyond Java the programming to alternative JVM languages, some have been writing business applications in this mode, already, for several years. Consider this, that a so-called closure written in Scala, is a completely different implementation to one written in Groovy, and to one written in Clojure. Also note in the latter that I crossed the line between a static compiled language and a dynamic language. It might pay the OpenJDK members and                                                            a note to look at the various alternative JVM language implementations. Of course, Brian Goetz, probably is already doing, with Alex Buckley, because the new Lambda design reflects warmly on the Scala function object syntax.

Mark Reinhold indicated that a possible implementation of Lambdas in JDK8 looks like it can written as Method Reference Handles and therefore may make use of Dynamic Invocation byte code. 

Sadly, I did not personally attend as many Core Java talks as I wanted to. The one I did attend were on Java performance tuning.

 

Java EE 7 and Movement to Cloud

 

I think that it is great that Java EE 7 is moving to be Cloud computing and also amusing that I remember an old JavaOne keynote of Sun Microsystem’s earlier paid for utility computing cycle project  (the now defunct Sun Grid project).

Cloud computing is now no longer a laughing matter. It is big business and all of the major players in the market offer means to allow a Java engineer to write applications to deployed on proprietary cloud products.

The ideas for Java EE 7 means bringing multi-tenancy, provisioning and configuration to many traditional Java EE APIs. It is a whole new world.

JavaOne 2011

[R] Sunny Chan from the Hong Kong Java User Group at his Performance Tuning talk

 

Java EE 7 needs a many leading cloud providers to collaborate on the standardisation to be really successful. Developers are already happy to code a specific vendor and platform, for example the Google App Engine or Microsoft’s Azure or Amazon EC2, so break this cycle now may be asking a little too much. More importantly, business have already chosen a cloud provider, because of consumer demand far exceeded the traditional clustered solutions. My fear is that ultimately Java EE 7 is that the cloud API do not cover enough standardisation for the big users, e.g. a Netflix and the range of APIs are too weak.

If we can consolidate the vesting interest of vendors, then Java EE 7 could be successful de-facto standard for Platform As A Service.

 

What Are My Favourite Things About JavaOne 2011?

 

JavaOne 2011 was more successful than last year, because the many of the track sessions were grouped to the hotel. For the performance tuning and Java EE talks were in the Hilton and the JavaFX rich user interface talks were held in the Nikko hotel.

 

JavaOne 2011

Interested and serious look into the camera from [R] Dean Iverson and Stephen Chin [L] is gesticulating at the ScalaFX code on the slide

I also liked the hang space outside the sessions. This was a great idea, to sit or to stand and just chat to the interested. The orientation helpers also on the first day or two were priceless in a couple of occasions. I felt that I got to know some of the conference organisers and session door staff, because the JavaFX talks were co-located into the Nikko hotel. I do not know if this was the same experience for the Java EE speakers.

Audio / visual systems worked out quite well. Sound issues were a rarity. Projection of the slide deck was mostly clear.

At JavaOne 2010 conference, delegates were confused by the opening keynote that took place at Moscone. For this year’s conference, the keynotes were held in Hilton. The decision to clearly separate the operations of JavaOne and Open World was a great one. I noticed quite a few delegate had signed up for both conference, so I wonder how did that experience of double amount of sessions feel for them?

The sponsor partner keynotes left a lot to be desired, especially the Juniper Networks talk, which mention absolutely nothing about Java for 30 minutes. The Twitter and ARM guest invites left a good impression to me. If you are CTO, or even a CTO of Java strong related business then may be you should be approaching Oracle to do a keynote. Has nobody attempted to turn the table around with configuration?

Much better were the community keynotes and mini ones that took place on the last day of the conference. Making Sharat Chandler an honorary member of the Java Posse was a fun bit of the Thursday key note.

Stop Press: Oracle announced a deal where there will be 200 JavaOne 2011 talks featured on Parley over the next 12 months. The first 20 talks were immediately announced and available on Parleys.

 

What To Improve at JavaOne 2011?

 

The only speaker room in the Hilton Hotel was abysmally tiny compared to one that used exist in Moscone Centre. I am glad I did not have to depend on it all. I went back to my hotel or found an hang space. I was unhappy with the size of it and the lack of coffee and refreshments.

 

JavaOne 2011

The lovely [L] Eileen Bugee, who is wearing a very "blingey" JavaFX tee-shirt and of course [R] Jasper Potts talking about Pixel-perfect Design in JavaFX 2.0

Some of the branding of occasion, JavaOne 2011, in the sessions room could be improved. In the photographs that I took of presenters, there were some unsightly areas, maybe I am a perfectionist, it could be a little tidier there. I do think this has to with hotel facilities and management so may be there not an awful lot that Oracle can do.

 

JavaOne 2011

A JavaOne attendee taking a call in the upper level of the Nikko Hotel looking over Mason Street. "Well honey, I have to work today … just taking time out of the sessions …"

Rocking

 

JavaOne 2011

[L] Ixchel Almiray and [R] Andres Almiray, what a lovely couple!

 

The open space on Mason Street was initially a great idea I thought and then it rained. The tents need to be a larger. My photograph from Nikko looking down showed many delegate actually taking a breather in the open area. The tents just need to be large and more extensive covering around to afford a good chill area.

I would double the size of the Buzz Cafe House, because the queues were two long to get a decent Cappuccino.

 

JavaOne 2011

[R] Andres Almiray, I finally meet up and talk about Griffon. He was demonstrating Griffon and the Scala plug-in

The Wi-Fi worked most of the time, and it was really good that it was wide ranging. There were some DNS lookup errors, but nothing like some of the horrendous experience in the past.

Conference builder app for the iPhone / iOS devices worked reasonably well. Except when you couldn’t get service on line, or perhaps as a speaker you disable your mobile phone, then the app make a synchronisation to the server. If this communication is lacking then your app is out.

At least with the schedule builder application online one can export the sessions into a private calendar. The builder was much better than last year model, which was then unusable.

It would be great to have the Moscone Center back, may be the West Moscone.

 

The Shout Outs

 

I believe Oracle have delivered on their promise to move Java forward. The good times are ahead of us once more, so use it or lose it.

 

In no particular order:-

  • Stephen Chin
  • Jim Weaver
  • Eric Smith
  • Kirk Pepperdine
  • Adam Bien
  • Simon Ritter
  • Stuart Marks
  • Ixcel Almiray
  • Andres Almiray
  • Dick Wall
  • Joe Nuxoll
  • Tor Norbye
  • Karl Quinn
  • Joe Sondow
  • Federick Simon
  • David Booth
  • Jim Clarke
  • Cay Horstman
  • Keith Commbs
  • Sandra Iverson
  • Dean Iverson
  • James Ward
  • Stephan Janssen
  • Johan Vos
  • Jo Voreendeckers
  • Dan Hardiker
  • Gerritt Grunwald
  • Rags
  • Nicole Scott
  • Yolande Poirier
  • Sonya Berry
  • JDuchess team
  • Clara Ko
  • Regina ten Bruggencate
  • Charlie Hunt
  • Sunny Chan
  • Eileen Bugee
  • Jasper Potts
  • Richard Bair
  • Nicolas Lorain
  • George Saab
  • Martin Gunnarson
  • Par Sako
  • Arun Gupta
  • Bruno Souza
  • Martjin Verburg
  • Dierk Koening
  • Chris Phelps
  • Carrielyn Weber Hamann
  • Max Bohnbel
  • Lori Kammer
  • John Petersen
  • Dale Davenport
  • Daniel B Sline
  • Michael Heinrich
  • Tori Wieldt 
  • Mike Lewin
  • Justin Kestelyn
  • Kevin Rushford

and please forgive me if I have missed out anybody.

 

 

Java Champions

Java Champions Logo on Fleece

We are the Java Champions

Clearing Up Controversy

 

I am aware of some controversy around alleged sexism comment by Adam Bien, a fellow Java Champion of note. This was not the case at all. Actually, Adam, was misquoted, actually he said, “My first version of this [talk] was try to explain to a women. This almost got me thrown out of a couple of conferences. What this meant was I try to explain it to an alien … just forget everything you know”. Adam comes from Germany and was speaking in English as a foreign language. My German is pretty rusty, it would be a challenge, now, to give a presentation in German as it is a foreign language for me. I think Adam’s words and his expression were lost in translation, but his meaning is quite clear, and he is not a bigot in any form. Judge for yourself by listening to the first 3 minutes of Adam’s talk Rethinking Best Practices with Java EE 6.

Master Java Performance Tuning

July 24th, 2011 Comments off

 

About three weeks ago, I was watching a Film 4 late night with my partner. We stumbled upon on a martial-arts movie, called Ip Man. We thought it was one of the best Kung Fu movies of recent times, up there with Kung Fu Hustle. Donnie Yen who played Ip Man, a semi-biographically account of one of Bruce Lee’s mentors. Ip Man was a discipline, evolutionary innovator and a formidable master of a fighting style called Wing Chun.

 

2129364060_b9e98300c6_o_500x333

 

I thought after watching this amazing award-winning film that Chinese culture teaches us about excellence. Especially, in the movie, at the very beginning other masters of Chinese Kung Fu were attempting to defeat Ip Man is bouts of educational study. In other words these fights were not about making money, popularity contest or even on how to pull. They were simply impressive in the objective to gain further knowledge, to live better healthily and be enlightened. Thus it posed a question in my mind about the concept of masters, disciples and followers.

I have been trying to figure why developers and designers, especially in the financial services, are suddenly tied to a cast iron grate, of fire-fighting the Java Virtual Machine, attempting to make it do things that it was not originally designed for. Sometimes these non-functional requirements have meant a thorough knowledge of the operation JVM, how it manages memory, what sort of byte codes are executed in order to obtain the best performance. People suddenly want a great deal of understanding of the garbage collection mechanism way beyond that was required for Java EE 5 or 6, as they try to service 10 million records from database tables that are joined. Suddenly many more professionals are very interested in “Making it go-faster still”.

Why are developers in certain investment banks so willing to write Java like if it was C or C++? Surely this is wrong way to go? What is it about multiple threads that developers are not willing to use the Java SE 5 Executors or apply Java SE 6 concurrency utilities? Why are they willing rewrite their own Collections API? (Of course that is interesting for me personally for study in terms of the Scala Collections version 2.8 and better)

 

KirkPepperdine_400x517

Master Pepperdine

 

I know a little bit about Java Performance, but I need to understand it in much better than I do now. So like the prodigal masters of Kung Fu in alternate style, I need to understand performance on Java from someone who definitely knows what they are talking. Remember that concept of reputational risk that I mentioned in the JavaOne reviewer blog entry, well that risk is minimised when you sit, learn and study with a master. For me this master is Pepperdine.

Come September 2011, I am off to Crete to study with a master: Java Performance Tuning Training Course from Kirk Pepperdine. These old JAVAWUG videos can provide the reason why?

PS: Photo credit from the artful, talented and impressive Chicago Wuhsu, Illinois, USA, 2011

 

JAVAWUG BOF 38 Concurrency and Performance Part 1 from Peter Pilgrim on Vimeo.

JAVAWUG BOF 38 Concurrency and Performance Part 2 from Peter Pilgrim on Vimeo.


Scala Adoption: Learn A New Language People!

June 1st, 2011 Comments off

Yay! The Scala Adoption (Episode 353) session from JavaPosse Round Up 2011 has been released. You can listen to the JavaPosse podcast episodes online at The Lounge or try this German website directly Podcast.de.

The session was proposed by Diane Marsh and myself.  There is not much more I can say to add to the session on Scala adoption except for that in I can report in London in recent days. I hear of some of investment banks are showing a passing interest in the language. Utlimately they want a better solution to concurrency and  Unfortunately, this progress is far little and too late for me in my current situation. It would appear that in many institutions the guerrilla style, that of grass roots evolution or revolution, which many Groovy developer successfully chose to get Groovy adopted several years ago, is not happening the same way with Scala. The decision makers and management are yet to be convinced that Scala is the next programming language forward to take the Java platform. It may be that I, admittedly, am not moving in the right cliqué or that this esoteric information is not flowing outside the institutions themselves.

Regardless of whether banking will or will not adopt Scala is irrelevant. It is frankly true that some form of functional literate programming is going to come down the wire and in the very near future. It is not a question of “if” but of “when”. As Diane Marsh eloquently expressed her frustration at the very beginning of the session in Crested Butte, Colorado

Java is an old language. It’s been changed over the years, but seriously this has been really long time for a language to be dominant and kind of tongue and cheek. I will say like to say, “Man Up! Learn a new language people!” It is not that hard to learn a new language and we all should be doing it anyway. It’s good for our brains to actually think in different ways. It doesn’t have be just like Java, and there are reasons why it shouldn’t be.  If it were to be Java, we should just stick with Java. I’am kind of exhausted about the argument that it is just too difficult.”

 

Born this way.

Listen!

Deliberate Introspection: Nobodys Fault But Mine

April 21st, 2011 Comments off

 

(PARENTAL GUIDANCE: THE BLOG ENTRY IS FOR THE OVER 18)

Pick A Fight

If a competitor sucks, say no. When you do that, you’ill find that others who agree with you will rally to your side. Being anti-laggard, anti-improvement, and anti-accepting-the-status-father-of-a-quo is a great way to differentiate yourself and attract followers.

 

The song Nobody’s Fault But Mine was an original traditional blues and gospel song from the early twentieth century, it is listed as a negro spiritual as part of the 1924 Cleveland index. In 1976, Led Zeppelin, the progressive rock band of that era of hard rock music, made a heavily modified  version of the song on their album, Presence.

From Youtube.com 74BlackDiamond74 Nobody’s Fault But Mine Live At Knebworth England 1979

 

What really love are the lyrics, where Robert Plant sings his admission to defeat to concede. These are inspired lyrics, and I am unsure if these lyrics are found the original negro spiritual or not. To be honest, I don’t care, because in music it is all about the delivery, passion and the performance.

 

Devil he told me to roll
Devil he told me to roll roll roll roll
How to roll the log tonight
Nobody’s fault but mine

 

These lyrics explains exactly how I feel about life, right here right now, my passion about learning, my acceptance of the Beyond Java on the JVM movement.

Here are the items that I am not apologetic about:-

  • That moving beyond Java pisses you off. That you cannot see the value of Groovy, Clojure or Scala or Visage or another other alternative JVM language.
  • That you have a political agenda that makes you want cling stead fast to backwards compatibility
  • That maybe I appear to you to be behaving like the subject in The Beatles song, The Fool on the Hill; but in actual fact I believe that you should study the lyrics of the late great Michael Jackson: Man in the Mirror
  • That you are incapable about wanting to learn more about functional programming
  • That you think that I am eminently unemployable or unconsultable or uncontractable. I don’t give a fuck, go and find some maintenance programmers if that is your wish. I would rather be on the outside and definitely not involved on your inside.
  • For telling it like it is, and for keeping it real like Sarah Lane does on The Social Hour (that is now a very cool podcast: It is great to hear some female perspectives on this fucking thing we call the information technology industry. Go! Ladies, go!)
  • For being motivational and for pushing innovation, especially on the Java platform
  • For being passionate about Scala, JavaFX or Groovy or any else that I am interested in

And here are the items that I am sorry for:-

  • If I ever let you down with sometimes poor organisation skills. Did you know that multi-tasking is a myth? I read the book, bought the tee-shirt, watched the movie and I know this statement is true.
  • If I ever turned up to work late, missed that meeting that you organised, never paid my respects to your authority. I will do so from now on and put credit in your emotional bank, because everyone needs emotion investment, isn’t this correct?
  • If I never responded in time to solve your request, then it is my responsibility as well as my fault. From now on I will get a set work-item-limit imposed on myself. I will not take on tooi many tasks in fixed time period. In fact I have taken Agility, tasks, and a whiteboard into running my own personal life. It is instantly rewarding, because my memory is not good. Writing down tasks and putting stickies on my personal whiteboard has done wonders for my planning.
  • If I ever failed to live to up your expectations, then you can be sure that I have even higher expectations of myself. I kicked myself even harder and your feedback helped to improve my outlook and shift my gears.
  • If work-life balance got in the way of my passion to serve you then it is because I know that good health and fitness does wonders for performance and the soul. Please, if you not done so, read the book, Rework by Jason Fried and David Heinemeier Hanson and their frank warnings about workaholicism. I guarantee that you will agree with mine and their sentiments.
  • If we in social or working life never got on with each other. Life is like that unfortunately, may be it is just as well. Sometimes working relationships do not work out great, you win some and lose some, we can only to do the best we can in the time we have. Personalities clash I can live it and so can you. Best luck with whatever you do next. Let us just shake hands and move on.
  • If my push for new ideas left you scared shitless about you change then one need not be afriad. After all we are all here for learning. I will take it to you, my teachings of wisdom, at your learning pace from now on, but only if you have an open mind like a parachute, receptive to new ideas. If you don’t have one, then fuck off, because I don’t ever want to be on the laggard (old fart bastard) end of the technological adoption curve. I am fucking serious about this item. So fuck off with your ignorant self, if your heart is truly set on hatred

This is who am I. I am clear. I am transparent. I am Peter Pilgrim. I am rolling with the devil, because we have to move on to groove on. Understand.

Finally another little quote, from Rework, Jason Fried and David Heinemeier Hanson

Workaholics miss the point, too. They try to fix problems by throwing sheer hours at them. They try to make up for intellectual laziness with brute force. This results in inelegant solutions.

There you have it.

A Week In Scala: Pushing The Boundaries

April 17th, 2011 Comments off

The Java software platform is now more diverse in terms of innovations and what is the next best thing.

I just had brief overview view of the Ceylon JVM programming language. In my own view, this represents more evidence of a sea-change of thinking about Java the programming language.

Figurehead and Leadership

James Gosling was the long-term figurehead for the Java programming language and also the JVM, since 1995. His influence was felt for millions of Java engineers out there, who knew how famous he was and still is, what he did. At JavaOne conferences he was a superhero for many developers.

In the last years of Sun Microsystem’s existence, his influence waned as that company went through financial difficulties. Shortly after Oracle acquired Sun Microsystems in early 2010, Gosling left. He has now reappeared at Google in an employee in as-yet unknown role.

In short, the global Java community lost the influence of a key leader as in the programming language. In fact, Gosling, has gone on record, at this year’s Server Side Symposium Journal to reportedly have said that he no longer cared anymore about Java the programming language. [Gosling said what he really cared about was the Java Virtual Machine]

 

Confidence in Java

On the one hand this can interpreted that Java is no longer relevant. The programming language is relevant, because they are so many customers who are running applications in it today. On the other hand those customers who are running application on systems are no longer dependent on a figurehead.

As a side note, Sun Microsystems always liked to market the statistics: there are billions of devices, mobile feature phones, that run Java, as in Java ME.

The return on investment on Java has been taken and used up. When enterprise first invested into the platform around the turn of the century, having a global figure head, and a team of dedicated people around to help market the Java platform was the next best thing. Businesses understood. They got it. With the Internet generation, the needed a solution that would allow them to write easily server side / enterprise-class applications on commodity hardware. Java programming language applications running on a JVM that abstracted away malloc() and free() and the vendor’s operating system was that solution.

Now in 2011, this ambition has been in achieved, that barn door has been blown off and the horses bolted. Businesses have a great Java EE (or like) applications running now on Java enterprise servers. The money has been made and now what happens next?

Whilst we were all enjoying the rise,rise and rise of Java from the client-side to the server-side in ubiquitous fashions,  we were making good business and money. The majority of us, where happy to accept the lack of innovation in the Java programming language, we accepted the ideas of best practices, and even the mishap of J2EE design patterns.

Some developers were not so confidence in the evolution of Java. That anger or frustration or irritation or curiosity began to appear in open source innovations, such Gavin King’s Hibernate and Rod Johnson, general unhappiness with EJB 1.1, so he invented the Spring Framework from the ideas of dependency injection / inversion of control.

Others like Martin Odersky, though instead of making Java better, rather that they would make a better Java. The Switzerland professor at EPFL came up with a scalable language., called Scala.

 James Strachan wanted a dynamically typed version of Java, instead of a statically typed language. He created Groovy the programming language. 

Charles Nutter already found an external platform like Ruby and thought it would great to port it the JVM. So he got together with Thomas Enebo and created JRuby.

The innovation was a deeper level in to building and designing, or adapting a programming language to supersede the current implementation of Java the programming language.

 

Open Season

 

In a nutshell, I do not think we be worrying about proposals for programming languages appearing on the JVM. Like Ceylon appearing out of the blue, a few days ago, I believe it is all good. With Ceylon specifically, there is no point getting upset, until you see the product and have a play with it yourself. Individually, that is how we all learn any new technology. It is certainly the way I learnt to program with Groovy, JavaFX Script and Scala. One cannot just determine a proper and contrite conclusion on just hearsay or back up an opinion on a someone else’s whim.

There is a sense that with Java the programming language it is not really changing syntactically or improving since 2006, there has been a open ground for other alternative JVM language to enter the mainstream. Developers are now living a diverse dream of languages if they are inclined to do so. In other words, what is your motivation to learn? This is the time to do, because it has never been so colourful and rich.

My own motivation is to get into functional programming, whilst not giving up the object oriented development that I spent over a decade achieving. In 1997 I wanted to become a C++ Guru, because I thought that that was the way forward. I had drank the coffee and tried the Red Bull and vodka. I was going to be the Standard Template Library king and be a generic programming wizard. Of course, my world, it changed. In 1998, I attended a Java programming course and learnt something completely different. During the course, I had decided that there would be no more malloc and free if I could help it, that garbage collection was here, I need required a nascent collection library to write software and a byte-code executor, a virtual machine, portability, networkability and security. Great! Java was the future. I knew absolutely where my programming destiny was going into the next millennium.

By 2010, I already knew that my love affair with Java programming language was diluted. I still have a great respect for Java the programming language, the enterprise side, and I accepted many of the warts. However I have expanded to other possibilities beyond Java on the JVM.

For all of our continual learning, change is normally a good think. It enhances our professional competence, re-energises our brains. It prevents us from falling in to the trap of the status quo.

 

Politics

 

There is one other factor that is needs to be address in pushing the boundaries. The long wait for Java the programming language to change fundamentally, have allowed several providers to attempt to challenge Java. The success of Java was its own ability to be attractive, an instant-win, and emotional future value.

Most of the alternative JVM languages, which I have encountered, have been created through academic interest. Ceylon is perhaps one proper example, of commercial business, RedHat, attempting to go for the juggler with a language supported by a business. JavaFX Script was another example, of course, created by Sun Microsystems, 2008.

Watching the massive investment of technical folk and engineer into JavaFX Script 1.x in the years 2007 to 2010 gave a clue to how much of barrier to entry writing a popular and adopted language really it is. In short, as Bruce Tate also wrote in his book, Beyond Java, any new language needs an active community. There are no guarantees from a language design that community will follow and then adopt it without an X factor appeal. Such a language created by a commercial entity needs to have certain guarantees and essential wins. In other words, throwing the code simply over face and slapping a badge of proxy open source is no way near enough to a mark of quality and success.

It takes a long time to build an active community. In terms of Java the platform’s case, including the programming language, it has take on all the time from 1995 to now, which makes me doubtful that a new language can achieve the same success in a much shorter span without political manipulation.

This has not been lost on those who might have a political agenda. Whatever we do, we must aware of that business agenda. We must ask why they are introducing this technology? What do they really want to a achieve? What is the future value-add? Is this new language going to provide genuine benefits? Or we can ask that could elicit negative results. What are they afraid of? What are they attempting to protect? Is there a smell of vendor-lock-in or a walled garden?

In this regards, James Gosling, was massive advocate for the Java programming language and therefore now that he longer cares about Java the language, he will be missed by millions, directly and indirectly. That is a shame. It will be up to graceful leaders in the other language communities to lend a hand and be also, sometimes, watchful.

 

 

AudioBoos

 

Listen!Listen!

Thanks for reading and listening

The number of Java developers according of Evans Data Corp from 7 May 2010.

A Week In Scala: Pushing The Boundaries

April 16th, 2011 Comments off

The Java software platform is now more diverse in terms of innovations and what is the next best thing.

I just had brief overview view of Ceylon programming language. In my own view, this represents more evidence of a sea-change of thinking about Java the programming language.

Figurehead and Leadership

James Gosling was the long-term figurehead for the Java programming language and also the JVM, since 1995. His influence was felt for millions of Java engineers out there, who knew how famous he was and still is, what he did. At JavaOne conferences he was a superhero for many developers.

In the last years of Sun Microsystems, his influenced waned as that company went through difficulties. Short after Oracle acquired Sun, Gosling left. He has now reappeared at Google in an employee in as-yet unknown role.

In short, the global community lost the influence of Java key leader as in the programming language. In fact, Gosling, has gone on record, at this year’s Server Side Symposium Journal to reportedly have said that he no longer cared anymore about Java the programming language

 

Confidence in Java

On the one hand this can interpreted that Java is no longer relevant. The programming language is relevant, because they are so many customer who are running applications in it. On the other hand those customers who are running application on systems are no longer dependent on a figurehead.

The return on investment on Java has been taken and used up. When enterprise first invested into the platform around the turn of the century, having a global figure head, and a team of dedicated people around to help market the platform as the next best thing. Now in 2011, this ambition has been in achieved, that barn door has been blown off and the horses bolted. Businesses have a great applications running now on Java enterprise servers. The money has been made and now what?

Whilst we were all enjoying the rise,rise and rise of Java from the client-side to the server-side in ubiquitous fashions,  we were making good business and money. The majority of us, where happy to accept the lack of innovation in the Java programming language, we accepted the ideas of best practices, and even the mishap of J2EE design pattern.

Some developers were not so confidence in the evolution of Java. That anger or frustration or irritation or curiosity began to appear in open source innovations, such Gavin King’s Hibernate and Rod Johnson, general unhappiness with EJB 1.1, so he invented the Spring Framework.

Others like Martin Odersky, though instead of making Java better, rather they would make a better Java. The professor at EPFL came up with a scalable language. James Strachan wanted a dynamically typed version of Java, instead of a statically typed language. Charles Nutter already found an external platform like Ruby and thought it would great to port it the JVM.

The innovation was a deeper level in to building and designing, or adapting a programming language to supersede the current implementation of Java the programming language.

 

Open Season

 

In a nutshell, I do not think we be worrying about proposals for programming languages appearing on the JVM. Like Ceylon appearing out of the blue, a few days ago, I believe it is all good. With Ceylon specifically, there is no point getting upset, until you see the product and have a play with it yourself. Individually, that is how we all learn any new technology. It is certainly the way learnt Groovy, JavaFX Script and Scala. One cannot just determine a proper and contrite conclusion on hearsay or back up an opinion on a whim.

There is a sense that with Java the programming language not really changing syntactically or improving since 2006 there have been a open ground for other alternative JVM language to enter the mainstream. Developers are now living a diverse dream of languages if they are inclined to do so. In other words, what is your motivation to learn? This is the time to do, because it has never been so colourful and rich.

My own motivation is to get into functional programming, whilst not giving up the object oriented development that I spent over a decade achieving. In 1997 I wanted to become a C++ Guru, because I thought that that was the way forward. I was going to be Standard Template Library king and be a generic programming. Of course, it changed. I attended a Java course and learnt something different. No more malloc and free, garbage collection was here, a nascent collection library and a byte-code executor, a virtual machine, portability, networkability and security. Great! Java was the future. I knew absolutely where my programming destiny was going into the next millennium.

By 2010, I already knew that my love affair with Java programming language was diluted. I still have a great respect for Java the programming language, the enterprise side, and I accepted many of the warts. However I have expanded to other possibilities beyond Java on the JVM.

For all of our continual learning, change is normally a good think. It enhances our professional competence, re-energises our brains. It prevents us from falling in to the trap of the status quo.

 

Politics

 

There is one other factor that is needs to be address in pushing the boundaries. The long wait for Java the programming language to change fundamentally, have allowed several provider to attempt to challenge Java. The success of Java was its own ability to be attractive, an instant-win, and emotional future value.

This has not been lost on  those who might have a political agenda. Whatever we do, we must aware of that business agenda. We must ask why they are introducing this technology? What do they really want to a achieve? What is the future value-add? In this regards, James Gosling, was massive advocate for the Java programming language and therefore now that he longer cares about Java the language, he will be missed by millions, directly and indirectly. That is a shame. It will be up to graceful leaders in the other language communities to lend a hand.

 

 

AudioBoos

 

Listen!Listen!

Thanks for reading and listening

A Week of Scala: Historical Trip Down Memory Lane

April 15th, 2011 Comments off

 

My week of Scala continues at the ACCU 2011 in Oxford. I will be here, incidentally, until Saturday lunchtime. At least that is the plan.

The Stream

First let me add some record of tweet to my presentation yesterday. You can also download my ACCU 2011 Introduction to Scala presentation direct from XeNoNiQUe. Otherwise play the Scribd version, at least that will work iOS devices including those tablets you all love to play with.

@ewan_milne: #accu2011 Proof that Scala is the future: RT @peter_pilgrim: Right then. My second day at #accu2012 can properly begin now.

@gmtng: just favorited your tweet: As promised My latest SlideShare upload : #ACCU2011 Introduction to Scala: An Object Functional Lang…

@AnthonySterling: RT @peter_pilgrim: @AnthonySterling Yes Slideshare conversion is broken. Download my "Intro to Scala" PDF directly http://is.gd/scalaintro

@alewark just favorited your tweet: As promised My latest SlideShare upload : #ACCU2011 Introduction to Scala: An Object Functional Lang… http://slidesha.re/hufsPG

@AnthonySterling: Aww, what a shame. It appears @peter_pilgrim’s "Introduction to #Scala" slides are borderline useless on @slideshare. http://is.gd/L77ouo

@jezhiggins just favorited your tweet: #accu2010 unfortunately slideshare messed up its view w/ the colours. Download my Intro to Scala PDF directly

@richardfearn just favorited your tweet: Audioboo: ACCU 2011 Introduction To Scala: We Past The Point of No-Return http://boo.fm/b329633 #accu2012 #scala #adoption #beyond #java

@richardfearn just favorited your tweet: #accu2010 unfortunately slideshare messed up its view w/ the colours. Download my Intro to Scala PDF directly

@pfriis just favorited your tweet: As promised My latest SlideShare upload : #ACCU2011 Introduction to Scala: An Object Functional Lang…

@patbaumgartner just favorited your tweet: As promised My latest SlideShare upload : #ACCU2011 Introduction to Scala: An Object Functional Lang…

Dear fellows know that you are knocking me out with this stream of consciousness.

 

Beyond The JVM Platform

 

I rediscovered a little gem of book by Bruce Tate, “Beyond Java: A Glimpse of the Future of Programming Languages” published September 2005 by O’Reilly. I bought a copy of this little gem, may be in 2006, it was only 180 pages long. Tate’s book pushed the benefits of Ruby the programming language, Rails the poster child of Ruby and continuation frameworks like Seaside for Smalltalk as being the future at the time. He gave a thorough assessment of Java’s history and achievements in the Internet. At around the tenth birthday of Java, I remember going to the most amazing JavaOne conference ever (2005), what a party that was. It was my second ever JavaOne conference and one where Sun Microsystems introduced the JavaCard on all of conference badges for the first time. Tate’s book in the autumn was a sobering come-down.

My overall conclusion after reading the book was that Java was going to be alright still. Although I did not understand then the functional influences from outside the platform like closures and high order methods, I took the book as a certain opinion, I never migrated to Ruby or Rails programming at all. I stayed with the Java software problem.

In 2005 the Java programming language had certain weaknesses in it, generics had just appeared there in Java SE 5 and the enhanced-for loop. All enterprises that I contracted for at the time, where stuck with J2EE 1.4 and application servers, Web Logic 7 –> 8, which had no official endorsement for Java 5. Businesses like investment banks where loath to upgrade to the next technology, because they were restrained by the commercial support and service layer agreements with the suppliers. This is still a familiar trend and circumstance in our industry.

As most of us know the path of Java programming language moved from the client-side to the server-side from 1998, when I first got involved with the Java platform, until 2005. Tate had this to say in his book:

“As the emphasis from Java shifted from client to server, enterprise integration became more important. Here, the partnership of IBM, Oracle, BEA, Borland and Sun, other paid huge dividends”

In 2011, we all know that Oracle swallowed up BEA in 2007 and then acquired Sun Microsystems in 2010. The number of enterprise players is now much smaller, and both IBM and Oracle collaborate on the OpenJDK project as well as being major Java EE suppliers. Java still has a large server-side community. It still is great solution for application server and enterprise development that is if you want to continue with the current solutions.

If you have a desire to push the platform to new limits then the programming language and the current framework may not be enough for you. If you are looking to cloud enterprise solution is going to be hard to find a standard JSR at the moment, if you are looking to go the other way in user interface, mobile or desktop solution there is a multitude of ideas, API, library and frameworks that may fulfil the requirements. The point is that many innovations now are in happening in languages other than Java or that those solutions are wrapping a domain specification language in a host language around Java APIs. (Grails and Spring Bean configurations written Groovy around the Spring Dependency Injection model. Bill Venners ScalaTest is a Scala framework and fluent testing DSL that can be launched via JUnit / TestNG or Maven or Ant or your favourite IDE)

Tate in retrospect managed to predict a few outcomes in his 2005 book. One is the demise of Sun Microsystems. He wrote long before, Jonathan Schwarz changed the NASDAQ stock sticker from  SUNW to JAVA, and the chief executive’s own open blogging, that:

“Sun is not the company that it once was, placing Java’s future in doubt. I’m not saying that Java will disappear, but Sun might. It has lot of cash in the bank, but where is it going to make money? It’s being squeezed on the low-end by companies like Dell, and AMD. IBM is squeezing Sun from above. Sun’s software and services businesses have never really taken off. I think Sun is a ripe acquisition target.”

At the time, Tate was nervous about IBM acquiring the Java brand. He was correct in April 2009. IBM made an attempt to acquire the entire brand. Who knew? Luckily (or unluckily) Oracle acquired the brand. In my opinion Oracle may just have given the Java platform at least another decade of real commercial growth, may be even two. It is always an uncertain business to predict the future. However, in my opinion, which is shared by many others, the whole Java software platform should have a good steward.

In today’s ACCU 2011, there was a great session, which I attended, by Steve “The Doc” List, and he talked about roles in facilitator patterns and anti-patterns. In my view and I am sure you can agree that Oracle cannot be classed as a Benevolent Dictator, rather it is more Qualifier and Dominator. Oracle has started, for the good of the community, to acquire the roles of Articulate (The Java Spotlight podcast and Early Access for JavaFX 2.0) and Converger (IBM and Apple agree to participate on the OpenJDK project, JCP and JDK 7 and JDK 8 announcements pushed, Bruno Souza and Soujava as EC members) and Gladiator (JDK 7 and JDK 8 Java Specification Requests pushed forward, much to chagrin of Apache Software Foundation, Doug Lea, Tim Peierls).

Sun Microsystems did very belatedly attempt to return to client-side, with JavaFX Script 1.x, with the Re-Invigoration of the Desktop theme of JavaOne 2007. My incandescence is not quite red, but orange-amber as my feelings on how the emergence of JavaFX came about. I shall thus summarise: too little and too late; bigger pie than the estimate delivery; strategy and right-timing and there is still time for JavaFX 2.0 success with domain specification languages written in alternative JVM languages.

Tate also postulated the question: Why not just fix Java?

“That would easy if you could pinpoint the problems. If you thought the problems were in the language itself, you could just do some major surgery and offer a new version of Java. That’s easier said than done. Sun has been very careful to preserve backward compatibility at all costs.”

Sun was conservative in order to protect customers. I also agree that is a super strategy in comparison to the combatant approach taken by Microsoft. History has shown Microsoft will dictate over the experiences and requirements of its customers. We know best is the mantra. Microsoft wholesale deprecated SilverLight, changed Visual Basic from version 5 to 6 and then forced customer to change source code by changing the languages of C# 2.0 to 3.0 to 4.0.

There is another side to this, I think customers need to be told sometimes to upgrade or update its applications and systems. Even Microsoft itself attempted to put down Internet Explorer 6 with a massive multi-million dollar global advertising campaign a year ago, telling us to upgrade to Internet Explorer 8. The issue for Microsoft is that it has earned the mistrust of millions of users as well as thousands of companies for just getting the product wrong. Windows Vista uptake was never as good in satisfaction, because of the troubles with driver incompatibilities, poor start-up times, and user experience expectations. In comparison to the upgrade from Windows 3.1 to Windows 95, Windows Vista was a poor imitator. Albeit, Windows 7 is a much better operating system, there are still problems for businesses concerning drivers, hibernation and one sometimes still cannot deliberate and summarily kill any process on the machine. Microsoft has to it’s credit pushed the technological curve through zealotry. Sometimes you just have to do it, because the client will never upgrade and you can never get to the next level of evolution, and therefore it is time, sadly, for laggard enterprise to go take a hump. I am rather sure you can personally name a few concerns that are like that: just hanging on to the older stuff because it can and it will

Much of the knowledge we have now, was the same when Tate wrote:

“Many languages have trumped Java technically, but they still failed. Betamax, too, was technically better than VHS. The biggest factor of the equation is social. Without a credible community, there can be no success.”

The Groovy community is a great example of this social aspect and interaction. Paul King in Australia has reported that he personally has helped more businesses in get up to speed in Groovy and Grails in over 100 projects. The idea of introducing Groovy in small tasks in the beginning and letting developers do experiments in projects in areas that do not affect the critical-path of business, like administration, building a web site to back an database table, or tidying up a build operation allowed developers to gain confidence. It would be and should be the same for Scala adoption. Start small, gain trust and confidence. Keep going on.

“Unless it is a disruptive technology, it has hard to see the next major programming language coming from a commercial vendor. There is just too much fear and distrust among the major players.”

Tate is this case has been proven largely and fuzzily true. You need to learn Java the programming language if you going to program an Android mobile phone or tablet. Google never introduced a new programming language for Android. They could have or some people might have said that they should have. However they wanted knowledge transfer and easy access to the market mind share of the engineers, the 9-10 millions Java knowledgeable people on the planet: developers, designers and architects. It is a number game after all. You only need less than one percent to look at your new operating system / mobile solution probably to be affective. They rather assimilated the programming language of Java like the Borg and transcribed language’s semantics and syntax into their own Dalvik executable instructions.

Customer business can be laggard about holding on applications written in Java the programming language. These enterprises should know that some of the real innovation is attracting the best engineers to look beyond the language. There are examples of projects in Scala, JRuby, Groovy and Clojure etc that show how we can better write software of the future.

Tate had some metrics for Java’s successor, namely:

  • Dynamic typing for better productivity
  • Rapid feedback loop
  • User interface focus to provide, rich environment for building user interfaces
  • Dynamic class model, ability to discover and change the parts of a class at runtime
  • True OOP provide a conceptually pure implementation object oriented programming with no primitives and a single root for all objects
  • Consistent and neat – the language should code that’s clean and maintainable
  • Continuations – the language should enable important higher abstractions like continuations

Scala the object-functional multi-paradigm programming language, in the year 2011, meets Tate’s requirements from 2005, except for dynamic typing and adaptable class model. Scala instead is statically typed and therefore is safe and performant as much as possible to writing an equivalent application in the Java programming language. Scala does not provide dynamic classes, it has traits (mix-ins) and composition.

Scala also has a doorway into the funky new world of functional programming. Tate had not the foresight in 2005 to see that the under-utilisation of CPU cores is now expected to cause the industry major concern in this decade. He is also could not see the wider burgeoning interest in domain specific languages and writing control abstractions for library users.

Even if Scala is not the next Java successor, there is suddenly a great interest in interoperability of languages on the Java Virtual Machine. How on earth are we going allow these languages to call each other methods or routines, or even now compile and build together? How can also ensure that these language, the dynamically typed one, are going to be performant across multiple CPU cores?

We are going to find out however, it is not a question of if and but when, because the major innovators are pushing the platform forward. Suddenly every engineer or rather elite engineer or those that consider themselves to be in the elite cliqué are wanting to be  language designers. The class and the form of these language designers will tell in time, I suspect if you starting now you have an awful long way to learn to be good one. If you think are then probably I am writing to a child prodigy or somebody help me out here. Designing a language is hard enough, designing the next great successor language to Java is an even tougher task.

I trust in Professor Martin Odersky in his scalable language idea as a probable answer and other languages are welcome as well. As I said in my talk on Wednesday morning, we are going to be drinking a lot of coffee beans and the rollercoaster ride in the object / functional space is going to be rough, we need a good captain and sailors, and seat belts. No matter whatever will happen, I have two predictions for the Java eco-systems.

  • The interest and adoption of alternative JVM languages will increase in pace, as long as Java the programming language is constrained backward compatibility and the innovators in the other languages keep pushing the envelope ahead of Java.

 

  • The amount of new ground-breaking applications written from scratch purely in the Java programming language starts to decline from this year (2011) onwards. In other words if there are truly great killer applications / application frameworks written in Java from this point onwards, they will cater also for alternative JVM language too.

 

For now I bid you adieu.

Dead Market, Minds Full of Hate

March 22nd, 2011 1 comment

The market is dead. The brief flurry of activity in January and February is at an end. There is truly not a lot going on out there.

I seem to have attracted some haters out there. Because I have been pushing Beyond Java, looking at innovation beyond Java the programming language, many folk seem to be upset about this. The next time you see me, please feel free, if you want to cross the street and walk on the other side of the road. I see you though. Of course I can see you creeping and scurrying in the dark alleys of tech town. I simply do not have time for minds full of hate. However you have a right to choose hate for your heart. It is sad, but true.

Here is the news: Innovation will be happening whether you like it or not. You may not be agreeable to it, or it might actually believe that Beyond Java is too risky for you or you cannot afford it now. This moving feast is happening and it is on the road. Tough.

Deeply Worried Q1 – Q2

March 16th, 2011 2 comments

I have just had massive blow out. I seem to be fighting and arguing all the time now with close people near me. I feel ratty even talking to acquaintances. A turning point has been reach, and I honestly do not what on earth to do next about it.

It would appear that investment banks are extremely confused on what their long strategy is to do with Java and even Beyond Java:

  1. The sheer unpredictably of interviewer requirements, unpredictably of technical, social, team make up, and process whether it is agile or non-agile
  2. All interviewers are different because all client are different; this is understood and they all have different personalities; however common rapport is increasingly hard to achieve in the mix there
  3. Difficulty of getting to the conclusion of a potential engagement; the perfect match is proving harder to achieve 
  4. Lack of foresight in clients in that they really want. It seems that they only interested ever in a fix for the pain right here right now – they are unwilling to look at changing the application architecture; infrastructure; underlying algorithms behind the scene
  5. Expect wizards to turn up and perform a spell of magic – and clear all ills. We still do not if there is a special technical skill that is out there (a silver bullet) if there is such a thing.
  6. The state of the job market software engineering in financial services / investment bank in City of London is unknown. Is it good or bad? Everyone seems to have a conflicting view.

With case (5) I could have said several years ago. “Ah! The missing skillset of knowledge is Java Servlets or Struts or JSF or EJB or even Spring Framework”, then I could have done something about it. In 2011 the answer is “Well, Hellfire, save matches, fuck a duck and see what hatches!” and my own little addendum to Steven Tyler’s [American Idol Judge] surprised vocal curse-rhyme is, “Hail Jesus and Mary! Spread your legs, buttocks and latches. Give me good sex, herpes and whatever catches”. In other words if there is a magic inspired Java technology X that one needs to get an engagement in 2011, then it is news to me.

The deep worry of (5) is, I believe that it is further evidence of Java ecosystem fragmentation and disparate wealth and spread of technologies. On the one hand I would be over joyed if the clients now let start looking Beyond Java on the JVM, but they are unanimously sticking with Java the programming language, sticking purely to it, becoming the late majority and progressing to a laggard category.

These dogs [bitches] are holding back the innovation and early adopter categories (including me, myself and I; and also add you, yourself and you). We know that the backward compatibility guarantees is the constraint on the Java programming language. You and I can see that this rubber band stretching between laggards and early adopters has to break at some time soon as the client themselves are demand more of the applications that run on the Java software platform. We can no longer be held to ransom for application strongly tied up to legacy WebSphere application server 4/5, WebLogic Server 8 or steadfast only runs on a JDK 1.4.2. The clients must know that they have to upgrade their application, give up these legacy environments, reinvest for future ROI, refactor for sustainable architecture, in order to ultimately be competitive in their technology model, which is by now proportional to the performance their business model.

In case (4) I see a lot of job specifications for things like Java performance and multiple thread programing / concurrency expertise.

The candidate must have extensive Java knowledge and must be experienced in writing streamlined (memory and CPU efficient) code. Additionally, they must have a very good understanding of Java multi-threading and Java performance tuning.

This suggests to my mind, client are facing a lot of issues about pain now, fire-fighting and fixing the problem short-term. It just does not suggest fixing performance in a long-term strategic way through innovation and changing the architecture or searching for a better algorithm or collapsing layers appears to be non-thought here. Not up for discussing. Nada.

It seem all to soon to be like a Hollywood action movie scene: Just load the fucker and fix it so the actor can keeping shooting bullets from my rifle, whilst not thinking of day when rifles are replaced with ray-guns. (One can therefore forget talking to prospective client about Scala adoption or looking at radically different solution á la Clojure)

With case (2) this is human interaction sociological issue, the quality of interviewers seems to less than desirable IMHO. If the other side of the fence has different fixed ideas about software development rather you appear to do, then we are sunk in a face-to-face. And low and below if the organisation has dysfunctional view of Agility, then the wheels will come off …

With case (5) asking the candidate or the contract for wider flexibility suggest that the client has a lack of clarity in the first place. It is this idea of, in a British way, or wanting to dot the I-s and crossed the T-s, ticking all the boxes from A to K, in order to get SIGN OFF from the manager’s manager that is a deeply flawed and ultimately troubling. Yes one can say the job market behaves in the Keynesian model of economy, it is a seller’s markets now, but who the fuck is a ultimate master of Java, C# and C++, Perl, Python, Swing, Spring Framework, ASP, Hibernate, Core Java, JPA,Scripting Languages, Web and programming language and framework simultaneously and not already working for the software deity G.0.D? I would like to know who these mythical people are and meet them today; and I suspect so would you.

With case (6) it is hard to get the real truth of the information of engagements these days, when one is involved fighting in a war. The war is the talent search game and recruitment of good programmers. The amount of misinformation is as dangerous as finding right information. The trouble is discerning if your information is valid and good, the signal-to-noise ratio is not good today.

I am deeply worried about the future prospects. Currently my own money and budget have limits, but there are not infinite. I can postulate, blog and express my enthusiast about a Beyond Java (on the JVM platform) universe as much as humanly possible, I can talk a good game (á la Paul Gascoigne) on Java technology and the platform, as I have done it before. I am human and have limits though, and I am beginning wonder genuinely what those are at the moment …

My tech lead rant is over … Stupid, silly and uninspired … unsure what value there is there … software pride weak … we don’t reach … we don’t join arms … ah we as software developers take it up the ass as per usual …

Categories: alternative, banks, beyond, future, Java, jvm, language, London Tags: