Archive

Archive for the ‘People’ Category

Some Advice for New University Graduates; Dreams of Developing Software

December 26th, 2012 1 comment

I have taken a step back in an attempt to put the year 2012 in focus. As always, it started with great hopes and there were highs and it seemed for a moment, that working life was back on track, but lurking in the background was an impending disaster. The problems were not fixed, I can see them now, but that is for another blog post.

In this post, I went with another angle of working life, I pondered for a moment, what on earth would I tell myself as the twenty something university graduate? What advice would I give to another university graduate now?

Tools, Frameworks and Languages

The tools for writing applications are definitely here. At the end of 2012 there are an abundance compared to slow pre-Internet age of 1992. You have lots of opportunities in programming languages such as Java. It runs on a virtual machine and you can forget about dreams of C++ being a guru engineer and purely object oriented development. The landscape is changing. I would say learn something about functional programming languages. You have to learn version control systems such Subversion, Mercurial and Github. Take advantage of the new technologies for learning, videos and on line courses, broadband Internet, and ways to amplify your knowledge. Remember: technology is not the answer, a panacea on its own, it only exists to serve to every human being, to provide efficiency, improvement and greater achievements in progress. Out there is such a breadth of knowledge waiting and so little time to learn it all. Choose your technology and learning wisely.

I would warn myself about the dangers of social networking, and suggest you would do the very same. Privacy is dear. Code and ideas are dear. Keep some part of life in the off-line mode for your own security, if nothing else. Other people have been known to take ideas with out credit and attributions. That drunken binge or that slur against some person could in the future become a living nightmare. Only ever put on the Internet, the stuff you are truly happy to let be public knowledge; find the balance between share-nothing and share-almost-anything for yourself. Be wary of code that you do put out there in the Internet.  In my opinion in the future it could be held or used against. If you are showcasing ‘wares make sure it is the best work that you can do, don’t be shoddy or lazy about programming. Being part of open source framework as a committer is a good thing, it will open doors, and you get to meet electronically people on the other side of the planet. You might even be lucky enough to meet the other committers at conference or visit on holiday; maybe they may come to you. Life is better with the people you know; who know you and therefore have a bond with.

Because they are too many tools, frameworks and programming languages out there, I would advise myself to choose the special interest wisely with a view of what is going to benefit my career in the long term. Nobody can be master of all trades in IT. Now, our profession is too long in the tooth for that. If you want to be good developer, be that, a database girl be that, a security dude, then be that. Practise, rehearse and train in order to “get good”, only then will you become great at whatever it is you choose to do. Choose something you enjoy not the thing that your mother and father tells you that you must do. Listen to your beating heart first, before listening to the opinion of other people. Develop that gut, that the gut-feeling, the little voice in your head, the spirt that comes sometimes you feel exciting or when there is a sudden whisper of foreboding, an ill-wind, whatever, because it is true. It is the one statement of a fact that is not a YAGNI, you are going to need it, your inner voice.

You must live and work with other people. If the code is an experiment and is just for fun, then advertise as that with a definite label. Code is also nothing with people. Unfortunately code is the easy part, it is the dealing with the people, the communication, the handling of information between groups of folk, the social aspects, which are the hard parts.

Elitism

Surprise, surprise: be warned that Elitism is still in effect. Nothing has changed since the early 1990’s in what is legalised prejudice of university graduates. Employers are allowed to specify on job advertisements that they are only interested in certain set of candidates from so-called red brick universities [2] even though this smacks in the face of diversity and fair entrance. There are employers wanting the so-called best software developers out of university or higher education college, if you have less than second-class first level degree (2-1) your application might tossed directly straight in the bin [1]. In my day applications were sent by post, now it is quite easy to discard a very crafted Word or PDF document in to the digital waste receptacle in the sky. Yet, it is common knowledge, or it should be, in the IT profession that a certain Mr Bill Gates, of Microsoft, did not even graduate with a degree.

My advice is to the same now as it was then, Keeping On Moving [10], there are always alternatives to elitist organisations, which may well go out of business sooner rather than later. I learnt very quickly there is always one choice, colloquially, known as The Law of Two Feet [9]. All you have to do build on the network that you started whilst in university. The teacher or lecturer you did the best project for, the mate that you had the best times with at the pub, even the gym is a place to find and discuss opportunity. If you have impressed a friend or colleague and if they are really your friend, know you personally, then you are more likely to get opportunities of work that are more suited to your skills.

Job Shock

During the early 1990’s the world was recovering from previous financial crisis, albeit it was a smaller compared to the massive crunching meltdown that we have had running now for five years, since 2007. For the record, I am also grating my teeth too, in frustration with you too.  I feel. I am a human being too. The shocking stories of the job search of recent university graduate have left me cold.

There was a time before the monetary union of Europe and the Euro, when each country in the European union had it’s own currency like the Deutschemark, the Franc, the Peseta and Lira; and therefore their own national bank of control, of monetary policy, then there was the possibility and the economic reality of at least Germany still being the powerhouse of Europe and the World when Britain was in the doldrums. Indeed, Germany was able to survive the recession of the early 1990’s, I know because I was living there for a time.

Since the turn of the century, the sudden explosion of the Internet, the reliance on better communication links, the rise of common markets, radical improvements of technology, better efficiencies in trading have meant we have a global economy.  The door has closed forever on hoping over the English Channel to find lucrative work, even if the language barriers were not there at all. A recession in Germany most certainly means a downturn in Britain and Ireland.

For university graduates, this means that getting a job search is much harder than 15 and 20 years ago. The competition is fierce; the depression is deep. Some graduates wondered why they have invested their formative years in to getting a university paper only to find themselves flipping hamburgers at McDonald or desperately applying to become a retail shop assistant at the local Debenhams or Next fashion store [3][4].

The Job-Shock of 2012 is clearly worse than 1992.

Eric, Newcastle

I have just passed my 1 year anniversary from my master’s degree. There’s nothing to celebrate because it’s also the same time I started looking for jobs and 1 year on, I have had no success. I have been to nearly a dozen interviews to progress on my career to be an engineer and have had no success.

Laura, London

I completely understand what you guys mean. It is so hard to keep motivated when you keep getting told, “Sorry, you haven’t got enough experience” and then you say “but that’s why I want a job!!”

With the two years from finishing my degree to starting my graduate job I gained experience and continued to apply. Getting experience isn’t easy though because quite often you need some experience to get experience. My advice is to plan what skills you want to show experience in then make a plan from their, starting with smaller experience and aiming for the bigger stuff when you have something in hand.

We are losing young and gifted people across a wide-cross section of disciplines [5]. Some are giving up on their dreams of having a career. Sadly, some people who thought about a career in information technology, software development, programming or designing applications, may already be saying to themselves: too long and hard to achieve the result I dreamed of; do not think to apply because it never happens to people just like me.

Continuous Reinvention

I am here to tell you that if you want to get a programming job in information technology then it is possible. Don’t give on IT just yet. The roles are there, if you keep looking for them. It is quite similar to dating. Two people will never meet each other, if they stop searching of the other lover. If either one of them gives up then the cause of true love is lost. But then, how do I find a job? A better question is, how do I find a job that I really will enjoy? The best and ideal way to do this is, I think, is to find that company and group of employers that is enthusiastic, altruistic and cultured. In other words, the company must have a distinct lack of dysfunction, but you as a graduate candidate have already found that to be true, yours suspicions, which you most likely experienced on the job hunt are quite correct, I am afraid.  You absolutely correct to note that every company that advertises, “We hire only the best candidates”, is logically not “the best”.  Learn to read those job specifications and as some would say read between the lines. Ask some searching questions: what happened to last year’s recruitment? As an addendum to the infamous and standard question: How did this job become vacant?

Start networking when your career is in infancy. Keep your ear to the ground and listening and learn the behaviours of others. It is sad, but true, in the IT career too, you have to watch your back as well. Resist the temptation to be closed and unapproachable, instead be that person, open to change, a mind like parachute. Remember who put the faith in you and got you to this great position that you are in now. You have a university degree or better, not many people in the world get that, and those who try to put you down, are jealous, because when they had their chance in life, they bloody blew it. Just because they took a mis-step then that does not mean you are going to. If you really want to be black and proud and be bad meaning good, then for heaven’s sake, buy the CD or download the MP3 of Public Enemy: Fight The Power, Rebel without a Pause and Bring The Noise [8]. Rock on out in your bedroom when you feel the world is against you. For all other people find some inspiration and music to gets you going, motivates and inspires positivity in yourself, whatever it is, whether music, theatre, classics, walking the dog, or a landscape that you remember as a child, then keep on at it and make it your central core, your sword and shield in the battle, the battle of survival.

When you leave university and get on the job market for the first time, it is a great time to learn and identify the different types of institutions. For instance, you may have thought that big company ACME was the best for you to a get a job in, perhaps you were tempted by the glossy brochure, or the suited and booted personel at the job fair, maybe they had the best gizmos in the handout bag at a conference; and then you later find out that the much smaller FROZFIZZ is better. You will be probably be surprised at youreself suddenly turning to the FROZFIZZ, and finding this smaller enterprise attractive. Maybe it was because they have a better training scheme, perhaps they send there employees to get  proper IT certifications, and perhaps they offer a real chance to use the next interesting new technology or framework there. More often or not, the FROZFIZZ employees seem really happy ,warm and generous. It is not fake, because you can confirm from a friend who recently got a job there. That is good-cultured. You know it when you find it. Some people spent their life trying to find the good culture. Okay, FROZFIZZ has a much lower starting salary than ACME and they cannot afford to pay an contributory pension plan or some other additional benefits compared to ACME. This is the time after university to learn how to measure up and down different employers when, most likely, you have not yet got the husband or the wife or long term spouse to bloody annoy you and you can concentrate on what is best for you and your career. Twenty years down the line, you will not regret choosing happiness in organisations like FROZFIZZ rather the gravy train of ACME. In fact, it is better to have worked at series of FROZFIZZ like companies than stick to the pressure and unloved atmosphere of ACME for ten years, even if you start climbing the promotional ladder in to senior management. The one thing that I want to hit you home with, that is almost universal truth, “The People are the Company”.

In software industry, which is a global economy, being comfortable where you work and when you work is the most important reason for having a career. Yes it can be learning Java or Scala or Groovy some other programming language, but if the company is dysfunctional then the world can feel like a horrid place. In this day and age, we are rapidly seeing the decline of a job-for-life. If you cannot change the organisation, then change the organisation.

Some people, do leave the country just to find that the one opportunity to start an IT career. If you want my advice, and you are seriously considering it, then do it. If nothing else, you will learn a new language, if English is not the native language of country that you will work in, and you will have a different culture and outlook of life to tune it in. It will demonstrate to the world, on your curriculum vitate that you are one of the few who is remarkable, courageous and brave. Although leaving the country is tough and deliberate decision for many people, you can always come back after a few years. Even fewer souls, permanently leave Great Britain for the USA or beyond and never return, their lives changed because they made the decision. It is all about finding alternatives.

Remember you always a choice. Just ask Carol Vorderman [7]. Stay the course, and achieve your dreams of becoming a professional software developer; I guarantee you will not regret it.

[1] http://www.standard.co.uk/news/work/sign-of-the-times-graduates-take-to-streets-in-search-of-job-8226282.html

[2] http://en.wikipedia.org/wiki/Red_brick_university

[3] http://www.independent.co.uk/news/education/education-news/redbrick-universities-are-more-elitist-than-oxbridge-634051.html

[4] http://www.guardian.co.uk/money/2012/jul/04/graduate-recruiters-look-for-21-degree?intcmp=239

[5] http://www.guardian.co.uk/education/2012/jul/31/lower-second-degree-employment-prospects

[6] http://en.wikipedia.org/wiki/Organizational_culture

[7] http://www.guardian.co.uk/theguardian/shortcuts/2012/jul/04/dont-judge-job-applicant-by-degree

[8] http://en.wikipedia.org/wiki/Fight_the_Power

[9] http://en.wikipedia.org/wiki/Open-space_technology

[10] http://en.wikipedia.org/wiki/Keep_On_Movin’_(Soul_II_Soul_song)

+PP+

Agile Software Developer Terminology for New Programmers

December 21st, 2012 2 comments

This is a post for new developers, young, inexperienced or old and retraining into information technology.

Recently, I had a discussion with many engineers at one of those many London user group nights about how there is so much new stuff that we have to explain to people new to programming. One person had to coach a graduate developer on writing unit tests. Another person had to explain the reasons why dependency injection is better than dependency lookup.  I can recall similarly stuff, being able to gently and concise explain why we should have unit tests in the code, and why we need them.

Here is my current matrix of terms:

Term Description
YAGNI You Are Not Going To Need It – The issue hare is that far more code is written than necessary to solve or deliver application functionality. 

Classic symptom: Added unused finder methods to session beans in Java EE

DRY Don’t Repeat Yourself – writing code that has lot of duplication across methods, classes, packages and package object. 

Classic symptoms: Copy & Paste coding in unit tests and repeated metadata in entity and the front end

KISS Keep It Simple Silly [or Stupid] – a mantra to describe writing only code to solve the function problem instead of writing a less complicated codeAlso see Occam’s Razor.

 

Classic symptom: Too many abstract layers in a software application

WET Write Every Time – the antithesis to DRY, where code is deliberately written that repeats lots and lots of time in different classes, packages, and functions. 

Symptoms: Deciding to do things your way and instead of collaborating with the other developers and finding some common ground.Classic antidote: DRY, Unit Tests and Code Refactoring.

WETTT Write Everything Ten Thousand Times – the hyperbole colloquial version of WET
R3 Rules of Three – This is not the proprietary operating system of the same name, or the classic 1980′s arcade game, or either the description of a maxed out pimp-my-ride Volkswagen Golf; but the idea that when ever you have three duplicated parts of code in a method, function or classes then it is time to refactor the duplication in to single method. See Rule of Three computer programming. 

Related to DRY and WET

 

Class Symptom: Ignoring the code repeats because of time pressures, or the Scrum master says no, don’t do it in this sprint.

DBC Design By Contract – the idea of building a service from a contract first. In Java you write the interface as simply as possible and then secondly worry about the implementation class.

 

Interfaces are easier to refactor around and because you can plug different implementations into the interface you get higher cohesion and lower coupling.

 

Classic Example: JDBC specification since version 1.0. There are tons of implementations for different relational databases including MySQL, Postgres, H2, Derby etc.  Every Java programmer knows how to code against JDBC because that they don’t have to fight with an different implementation, which vary, because the DBC implied it will do the right thing most of the time.

 

Also related to standardisation of application programming interfaces.

BDUF or BUDF Big Up-Front Design – a problem with many large corporate institutions that sometimes require a 100 – 1000 page document full of business requirement before any software construction gets the green lightSome poor architect or business analyst will have spent weeks investigating and chatting to the business about the requirement, only for the development team to say the document is practically worthless.

 

Antidote: Get the technical lead and some key developers talking with the business and the analysts and the customer. Ideation sessions everybody!Symptom: Waterfall methodology and aspects of the investment banking IT culture

 

Antidote: Unknown, lots of people how tried to bring “Agile” with both a big A and small A to many of these institutions with some success and failure

Pink Book Describes the book with a Pink Cover called Extreme Programming Installed by Ron Jeffries, Ann Andersen, and Chet Hendrickson. I do not recommend this for new starters unless for reference, since the Pink Book is now rather old, 2000, there are other more recent Agile development books and courses that help new Java developers.
YOLO You Only Load It Once [If Ever] – this is related to fact that you want to have a single source of truth in an application system. This is problem of mis-architecture, where someone has not thought the functional requirement through enough.

 

Classic Example: Shopping Cart Service EJB – you only ever want one implementation of the pay-point in an application, albeit you will have many pay-point providers (credit and debit card third parties and PayPal)

 

The If-Ever part is YOLO and YAGNI added together. You are not sure of the another part of the system loads the data, so you decide to keep the component. (You probably want to put a logging client on the YOLOIF thing so that you can effectively decide to chuck the component if nobody has used the function in 12 or 18 months time.)

 

Digression: If you have find data that is constantly being uploaded to serve a web request then perhaps it really needs caching and not YOLO.

Spike A quick exploration of coding in Sprint in SCRUM methodology, which is also time-boxed inside a single sprint, usually. In a Spike you are probably are looking an new API, like a cloud service or user interface API like JavaFX or similar and basically you explore if the function can implemented relatively well in the new API.In short, you are trying to build some confidence in a new area before committing yourself and other resources to it. Spikes are usually contained and protected from the flow of the critical path and restricted to a time length. See SMART goals. Once your team has gained confidence and knowledge in the new “thing” then reasonable estimates can be made.

 

Classic Examples: Adopting a build system – moving from Apache Ant to Maven; moving from Subversion to Git; Adopting a new open source library

TDD Test Driven Development – often conflicted as not being fully explained as a change of discipline and mind.”You are only ever doing one of these four things: writing unit tests, writing production code, refactoring unit tests, and refactoring production code; and never doing more than one at these previous at the same time.”
TFD Test First Development – builds on the ideas of TDD and then extends the discipline to writing unit test code before any production code.”Once you have a brand new unit test written completely, then you make sure that new unit test(s) actually fail in order to switch over to writing production code ensures the the new test passes.  After you have done that, you refactor the tests. Run all tests for all the green bars. Refactor the production code and runs the tests for all the green bar.Repeat: Go back to the start; write a new unit to that will check validate operation of the next function for the application. Repeat with the same formula as above.”

 

Velocity This is often misunderstood as a very basic measurement on the Return-on-Investment for SCRUM/XP software development and it has nothing at all to do with financial services, budgets and/or reporting. The creators of SCRUM/XP now disuade velocity as a ROI indicator at all.

 

Velocity is the number of story points completed per team per iteration. To the SCRUM/XP  experienced: Velocity is equal to the aggregated units of work completed over aggregated time intervals, which implies you measure each progress of tasks in two or more sprints.

Story Point For each user story in the sprint or task, predict  how hard it is to implement by using unit of reference. 

Story points are usually written in Fibonacci numbers: 0, 1, 1, 3, 5, 8, 13, 21, 34, 55, 89, 144Every agile team in the world has a definition of a user story unit point.Teams decide on the backlog items in order to come up with predictions and these joint predictions every member of team go to decide what should applied to the next sprint.

DTSTTCPW Do The Simplest Thing That Could Possibly Work – Related to Spike and KISS in many ways. If you are pressed for time and some trading systems developers in investment bank are then this is your working life. 

DTSTTCPW certainly invites team collaboration and effective sound-boarding from other developers and members of the team, otherwise you are asking for trouble.

VoC Voice of the Customer – This is a term from SCRUM methodology, but I am about 20% unsure about this one; I believe 80% of the time to mean a proxy, a placeholder, for the real customer, the person who understands the business requirement and will of the customer. Because the true user is unavailable for some reason due to authority, culture or organisation, or even geo-location. 

Some people have amusing called this abbreviation, the Voice of Reason, especially when they do not enjoy working with the customer directly.

Unit Test In Java programming, a Unit Test is a Java JUnit framework test class or TestNG framework test class that specifically verified and validates a single function of work in an application 

A unit test requires a target, which can be a Java Class, a Service Bean, Managed Bean or something implements the said functionality.

 

Unit test are often seen as low-level fast and efficient tests.

Functional Test A functional test is a larger test, which can also be a unit test, designed to test packages of classes or sub part of the overall application infrastructure. Functional test validates if the application meets one of the customer’s external requirements on performance, results and efficiency.

 

Symptom: a functional test is not necessarily a unit test, and not all functional tests are acceptance tests.

Acceptance Test An acceptance test is the same as a functional test in name only. Acceptance tests are those where the customer wants to see the validation pass in order they sign of the implementation. 

Symptom: If the customer is disastisfied with the application at demonstration time, then at least the one of the acceptance test is broken. Add one in the next sprint.

SOLID A set of five principles:Single Responsibility, Open-Closed, Liskov Substitution, Interface Segregation and Dependency Inversion.
Single Responsibility Principle An object class, a service bean, web service, a function or procedure should have only one single responsibilitySymptom: It is hard to write unit test for complex object, because it doing WETTT
Open Closed Principle Open for extension and closed for modificationIt means you can subclass the object, but the object is encapsulated by not allowing an outside object to gainfully change the internals. 

Symptom: leakage in object implementation, hard code dependency, and not working with Java interfaces (or interface like constructs i.e. Scala traits and mix-ins)

Liskov Substitution Principle Idea of swap-ability and is expressed as a Design By Contract (DBC).I can swap in another object X which is an implementation of T if that objects is a type of T and the overall application works.This is the basis of mocking objects, mocking implementation frameworks; testing in general; proxy remote objects, persistence capable objects; application server and lifecycle monitoring situations; plug-and-play and restartable applications. I could go on, but I won’t.
Interface Segregation Principle A service interface that does only single specific functional thing is better than a service interface that does several different things. 

Symptom: Failure to adhere to the KISS principle. In days gone, the non standard C++ String libraries where everybody threw in the kitchen sink of methods for any operation that one would want to write that manipulated a C/C++ String (char*)

Dependency Inversion Principle Idea of not hard-wiring a direct relationship to a dependent into object.In Java EE world, you would use a dependency injection container such as CDI to inject different managed beans into a service bean. 

Dependency inversion also should mean in my humble opinion given up on managing the life-cycle of service components and beans. The lifecycle is managed by the application container, the cloud provider or whatever it is you are using.

 

In another school of thought: every application is managed these days, whether it is the operating system, a virtual machine or web container or mobile platform (iOS and Android). This is the way forward.

Design Patterns A classic book on Design Patterns by Erich Gamma et Al. 

Ask your local technical leader to lend you his or her copy of the book; and if they don’t have a copy then that really sucks. Tell them to give you a personal training budget and buy the book yourself!

Glad to be of service to all my readers.

Merry Xmas and Happy New Year 2013!

+PP+

PS: I, once, had a notebook and file with a lot more of these terms with or without explanations. If I find anymore abbreviations and terms that I will add to this blog entry.

NightHacking Tour with Stephen Chin

November 20th, 2012 Comments off

On Monday 19th November 2012, in the evening, I interviewed for the final episode of the Nighthacking tour by Stephen Chin, who is an Oracle Evangelist for Java, Chairperson of the JavaOne Program committee, and also a Java Champion a.k.a @steveonjava.

We talked about ScalaFX the open source Domain Specific Language and Scala library framework for JavaFX 2.x. I showed off my version of the JavaOne 2011 demo in Scala. It is called VideoCubeDemo.scala. We actually started to fix a bug in the demo. We checked into version control a quick fix that helped and pushed that to Mercurial.

I also talked about my upcoming reference book for JavaEE 7, which will be published by Packt. I demonstrated some of the example Context Dependency & Injection code that will feature in the book. I showed off JBoss WeldDeltaSpike and Arquillian framework. We discussed some of the other upcoming features of Java EE7 like JAX RS and WebSockets; and also how CDI could be used outside the container in a JavaFX application.

Many thanks to SkillsMatter for hosting us, in particular Wendy Devolder and Nick Devolder; and extra special medal goes to Ami Partridge for being very helpful, staying late into the evening to help us get this live stream out to the public with wired ethernet cables, router boxes, WI-FI and tea.



Video streaming by Ustream

Hosted by Skills Matter, the company behind the Scala Exchange and Grails Exchange.


SkillsMatter 2012

 

+PP+

Emancipated

October 19th, 2012 Comments off

IMG_1285

By the beginning of September 2012, my consultancy contract, ended after 10 months. In a lot of ways, it was an interesting experience, a game of two halves. The first half was in-house and learned Spring Integration, Enterprise Application Integration, properly. Whereas in the past, I only touched on the periphery of these ideas, using Java Message Service and IBM MQ at various investment banks, with the work I did. I saw the meaningful and practical side of EAI on how two complete different and separate systems could be integrated together, through extensive configuration, to allow data to pass between them efficiently and flexibly. The second half of my so-called game was surprising, it was a steep learning curve on XSLT. In previous financial services projects, I had barely touched the surface of XSLT and XML data transformations. I guess you could say, I was well outside my typical comfort zone. In any case, I came to respect XSLT as an art, a rightful domain specific language and as a functional programming language.

As some might say, colloquially, What does not kill you, makes you stronger [derivation from Friedrich  Nietzsche, "Was mich nicht umbringt, macht mich starker" ]. This is way of a professional IT worker. You do the contract, stick with it and come out of the other end, take stock, evaluate and breathe in and out again. Such is life, keep place one foot in front of the other, then next, repeat. As Bob Marley once sang, “You see I don’t worry about thing. Don’t worry about a thing, [because] every little thing is gonna be alright”. I like these quotes/lyric as a reminder to stay strong, keep the faith, the belief, and the only way is up. The caveat emptor is always that it does not put money on the table. Unfortunately, one has to labour. It is during these stints of labour, when we have them, that we forget the most important things that matter. Some of those thing are rather so important, and just one day, you may never get a chance to relive them, share them with other, relish those great times , or it might suddenly all come to end, as it must one day for everybody. Being free of bonds and having the time between work reminds you, of it should, because some of us could care less for it, of life and its limitations, which quite frankly are inescapable. Still when you have the time, then there are great benefits.

My partner and I went off to Spain to soak up the late Summer/Autumn sun, I fell into a true relaxing mode of living again.  I was able to devote a lot time to writing demos for JavaOne 2012 rather than putting on façade, of being this great actor, worker, when I working in a high pressure environment. And once, I let the chains of burden completely fall away from my hands, I realised that there is a lot of ideas to look at. I began to question a little bit my overall investment in Java platform. From the stack of books in the small home office, many that I gave away, it was an awful lot. Am I happy with Java? Am I proud of all that I have done in Java? These were some searching questions. In order to answer them honestly, one had to be free of the triviality of everyday work, to take solace with family, and find time to be alone.  I was eventually able to say yes and yes again, because it was a choice-thing.

+PP+

JavaOne 2012 Report 3 Analysis & Conclusions

October 16th, 2012 Comments off

The Conference

This year’s conference, in my opinion, was the best that Oracle have produced in the three years that it has taken over the stewardship of Java. It was great for technical content. The positives were that similar sessions were arranged to be close together in the same hotel, in other words tracks were co-located. This was markedly better than 2010, when I remember rushing from building to building to get some particular session.

( Read the earlier section of the report Part 1 and 2 )

 

IMG_1129
The Bi-Plane from Moscone West

 

Oracle chose to give only 40% of the technical session to its own employees. The result was that we the happy consumer could choose a lot more sessions, however sometimes quantity is rather not quite a good as quality. I share Adam Bien‘s observation that perhaps this was tad too restrictive and Oracle were a bit hard on themselves. The quality of the engineers, designers and architects on Oracle side is really good and usually the Oracle teams have internal know-how for the rest of us, which we need to know, as they are working on critical future projects to do with any of the Java edition, SE, EE and ME. I would also want this percentage to 50% Oracle and 50% external speakers. Compare this percentage against the other tech conferences such Apple’s WWDC and Google’s I/O, which have good company speakers. I should throw in there were no marketing talks that I can bear witness to, which is fantastic.

I can only speak of the JavaFX, Rich Media track in conference, as a program reviewer, the technical content was great. I suspect that for the other tracks, Core Java, Java EE and Cool Stuff and other tracks, the reviewers in those areas, were equally transparent, ethical about what they thought and chose as a decent material for JavaOne. In my opinion, this a conference for the people and by the people, and they deserve to have the investment in flights [expensive], hotels [really expensive] and energy and time [priceless] returned in the greater measure of satisfaction. The sum of outputs has to greater than the sum of inputs for JavaOne to really work.

In terms of the people who did turn up to JavaOne, I felt that this was landmark year, were not only I, but other Java Champions (Frank Greco, New York Java User Group), noticed that there were lot of young Java developers out and around. When I say young, I also qualify it that to not only youthful, but also including new inexperienced oldies too. This is good thing for the increasing talent in the global community of Java engineering. We will always need good engineers, who are enthusiastic about learning the Java platform. The influx of the new was so peculiar that many failed to notice and recognise the Father of Java, walking around the Hilton San Francisco, on Wednesday 3rd October.

Community Keynote

In fact, I thought I had seen James Gosling too, from about 75 yards away, in profile only, just momentarily, and I dismissed it as  a figment of my imagination. I was pleasantly surprised and amazed when James Gosling came up on stage on the Thursday community key note. We should have all guessed, because his face was featured on the September 2012, digital edition of  the Java Magazine. James Gosling came up to the stage and talked about the Liquid Robotics software, waves, low-level level volume, guaranteed 100% data storage on Glassfish servers, and cloud services he had developed over the last year or so. James Gosling said that he reviewed many cloud computing offerings for a possible PaaS solution, and in the end, explained why  he chose JElastic. He chose this PaaS solution, because it supports GlassFish, virtualisation, scaling up-and down and clustering on demand.

Bruno Souza immediately stepped in to help with the tee-shirt throwing. He gave James Gosling the tee-shirts that he had collected to take back to folk in Brazil. We should make tee-shirt throwing a proper feature of the next JavaOne, especially if James Gosling is back.

Stephen Chin became the new Program Chairperson for JavaOne 2013 and Beyond. I believe that I already mentioned how amazing this was. JavaOne now has a really fantastic community-aware person. I have every confidence that the level of the technical sessions will remain at the high standard, and I can even see that those sessions will improve.

Martijn Verburg also did a very good job explaining the Adopt-a-JSR project at the keynote. It seems like a laudable approach to get Java engineers outside of Oracle and in the wider community to help implement some of the standards.

Call For Improvements

Where there any sore points? Yes there were some that I observed.

As an oldie, I can remember the great JavaOne conferences of 2005 and 2007 at the Moscone Center. In particular, the mega humongous party to celebrate Java’s tenth birthday in 2005, which was my second time at JavaOne ever. We only need to get JavaOne back to Moscone Center or the West, which probably is not going to happen.

On the JavaOne home page, the most important tools, Schedule Builder and Content Catalogue were located in the Fat Footer. These tools needs to the above-the-fold. Please explain these web design principals to the principal web site designer. The content catalogue should also show the speakers, the full name. Many talks are attractive because of the speaker who is delivering them, for example Mark Reinhold for Jigsaw, Brian Goetz for Lamda in JDK 8 and Martin Odersky for upcoming Scala 2.10 features.

The speaker room is tiny, in the Hilton San Francisco, consequently I spent very little time in it, except to grab coffee to get the endorphins charged up. Were there speaker preparation rooms available in the other hotels, Parc 55 and Nikko? I did not check when I was there. This would be important if the track you are presenting, e.g Mobile or Java ME was co-located in the other hotels. Also I thought they could have  supplied some more edibles, sandwiches or more snacks.

Oracle were really lucky with the weather this year, because the open area, Buzz Cafe, sponsored by IBM was a pleasant space for the odd tipple of beer, roasted coffee and to get some air. What if it had rained?

The Duke’s awards, this year, were held in the Buzz Cafe and open area. It should have been part of an official keynote. The winners deserved the entire group of attendees to be there, to bear witness, in order to respectfully receive such prestigious and rare awards. In fact, we could have one additional keynote session, may be Oracle can claim some of that 10% time back that they gave up. We need to dedicate a morning or afternoon keynote to this achievement ceremony, especially, now we have such a glut of young developers attending JavaOne for the first time.

Some technical sessions were poorly attended I thought. I am quite sure on Wednesday in one of the Imperial Ballrooms A or B, and not in my session, there were only 6 to 10 people watching a speaker talk. We have to do a little better in talk selection, and attracting some good speakers to JavaOne. I think that the cost of JavaOne may be the main prohibitor. I would like to see a much longer lead-time for this, say by a couple of months, so that speakers can take advantage of the earliest flights and hotel deals possible. I would also like to hear from the developer community and what you think are good ideas for JavaOne 2013, so that if I am involved as one of the program reviewers again for JavaFX, Rich media tracks, that I am serving the best interests.

 

DSCF4026
The Mongo DB stand at JavaOne 2012

 

Future of the Java

The future of Java is basically in your own hands. From my perspective, it is good see that Java is growing and there is still interest in advancing the entire platform forward. The key brands to look out for me are JavaFX 8, Java EE 7 and of course the growing adoption of Scala in the workplace.

Oracle produced some figures, graphs and statistics showing that businesses are adopting Java SE 7 since it was released earlier last year [28 July 2011], people have switched over, and that Java SE 6 is on the wane. Henrik Stahl,  senior director of product management at Oracle, posted a blog entry mention the statistics from Jelastic, quoted adoption was 79%, which matches their internal indicators. This can be positive for the possible adoption of Java SE 8, which will have lambda functions and more functional programming concepts. It is taking a long time to change, but I believe we are getting there with the Mother Language, as the other alternative JVM languages remain attractive for those businesses and developer willing to get more productivity and not be left behind hind with legacy application and infrastructure. I want to personally see job advertisements changing from “Scala, JRuby, or Groovy are high desirable” into “Scala, JRuby, or Groovy are desired”.

A clear break for user interface development on client Java is called for, concerning JavaFX and new media APIs. There are many people who depend on Swing, SWT, Adobe Flash / Flex and even Microsoft SilverLight for their UI. I will leave out the businesses that have already decided that Web platform and HTML5 are only UI for their products. JavaFX represents a sea change for Flash and SilverLight, it means that once again, you can build the entire application, client and server side, from metal to UX nuts using Java, if you so want to architect that way. This is fantastic if you are starting in mythical world of greenfield, development which every recruiter will try to sell to you that their client is offering, and we know in reality is that it never is, quite, the case. The bath water is the Swing framework from 1998, because the API was built with immediate graphics and rendering, and the babies are the application built squarely on Swing that the business is using now. It is going to be frightfully hard to do, cruel even, some poor architect will have to come to the conclusion, JavaFX and some sort scene-graph is the new path. There is no such thing as dirty job done cheap, but hey somebody has to inform the business that the UI code and application is in serious danger of becoming out dated. A transition from the old UI world to new is called for. Those young developers from JavaOne walking the floor, enjoying the demonstrations, FX and taking it all in, the 3D and rich media, including my very own video fracture demo that I repeated again, I really envy the sort of exciting applications that those fertile uncontaminated imaginations are going to create in the next few years or so.

The new idea is no longer the Java Applet that runs inside a web browser. The Java Plugin is history and Java Web Start is error prone and broken. Instead of deploying an application with an Applet or Plugin, you will be deploying your business application, the UX part of it, in the future to an application store. The application store may be a commercial one or might be a private implementation solely for the use of your employees and staff inside the big corporation. Getting JavaFX and Java to work in the forthcoming Microsoft Application Store must be a given, because it represents a clear competitive advantage to Microsoft in its battle with Google and Apple, when Java applications can be distributed by Windows Store. Modularisation of Java is going to be crucial as are Mark Rheinhold’s architectural idea about offering a series SE profiles, of ever increasing usefulness and package, until Jigsaw and Java 9 is here.

Will these young developers be willing to apply for Swing application developer job writing Java SE 6 in 2015 for some investment bank in the city, the financial district, the extreme majority, quite absolutely not? I could be even more crueler, but I think I will stop now and put the chalk down.

 

DSCF4040
Ben Evans [holding the mic] is talking about Adopt-a-JSR program

 

Shout Outs

In no particular order, whatsoever:

  • Mark Stephens, IDR Solutions
  • Betrand Goetzman, Consultant et Développer Web 2.0
  • Valérie Hillaware, iText PDF
  • Hans Docktor, CEO, Gradleware
  • Peter Walker, COO, Gradleware
  • Sidney Allen, StackMob
  • Peter Van de Voorder, RealDolmen
  • Dr. Olaf Grebner, Unternehmer
  • Gerritt Grunwald, Canoo
  • Ix-chel Ruiz and Andres Almiray, Canoo
  • Arvinder Brah, Navis
  • Dierk Koenig, Canoo
  • Wolfgang Wiegend, Oracle, Sales Consultant Fusion Middleware
  • Branko Mihaljevic, Hujak, Croatian Java User Association
  • Matija Tomaskovic, Evolva, Croatia
  • Fried Saacke, President of the Germany Association of Java User Groups
  • Frank Greco, New York User Group, USA
  • Cecilia Borg, Senior Manager, Engineering, Oracle
  • Arun Gupta, Glassfish, Oracle
  • Simon Ritter, Java Evangelist, Oracle
  • Jim Weaver, JavaFX Evangelist, Oracle
  • Yara Senger, SouJava, Brazil
  • Bruno Souza, SouJava, Brazik
  • Todd Castello, countless JavaPosse Round-Ups
  • Mark Heckler, Oracle
  • Sharat Chandler, Principal Productor Director and ex-JavaOne Program Chairperson, Oracle
  • Stephen Chin, new JavaOne Program Chairperson, Oracle
  • Ed Burns, Specification Lead for JSF, Java EE 7, Oracle
  • James Ward, Heroku
  • Jonathan Giles, JavaFX SDK team,Oracle
  • Michael Heinrichs, JavaFX SDK team, Oracle
  • John Yeary, Greenville JUG
  • Victor Klang, Typesafe
  • Fred Simon, Artifactory, JFrog
  • Shlomi Ben Haim, JFrog
  • Jasper Potts, JavaFX, Oracle
  • Richard Bair, JavaFX, Oracle
  • Carl Dea, Software Engineer, Author
  • Cameron Purdy, VP Product Development, Oracle
  • Nandini Ramani, VP Product Development, Oracle
  • Gail and Paul Anderson, Book Authors
  • Paul Deitel, Book Author
  • Peter van de Voorde, RealDomen
  • George Saab, VP Java Platform Development, Oracle
  • Csaba Toth, my regular JavaFX talk attendee
  • Adam Bien, Java EE book author, rock star and Java EE 6 consultant
  • Brian Goetz, Lambdas in Java 8, Oracle
  • Anton Epple, Netbeans
  • Mark Reinhold,  JDK Architect, Jigsaw in Java 9, Oracle
  • Luc Duponeel, ScalaFX committer, get that code generation in there please
  • Martijn Verburg, Adopt-a-JSR, London Java Community
  • Danno Ferrin, Groovy, OpenJFX Hacker
  • Mike Lehmann, Senior Director, Java EE, Oracle
  • Ryan Cuprak, Enginuity
  • Tori Wieldt, Oracle
  • Mattius Karlson, Swedish JUG, JFokus
  • Stefan Janssen, Devoxx, Belgium JUG
  • Dick Wall, JavaPosse
  • Van Riper, Google
  • Carl Quinn, JavaPosse
  • Kevin Nilson, Java Champion
  • Kirk Pepeerdine, Performance Tuning Expert, Java Champion
  • Heinz Kabutz, Java Language Expert, Java Champion
  • Jevgeni Kabanov, ZeroTunraround
  • Geetjan Wielenga, NetBeans Dream Team
  • Roger Brinkley, Java Spotlight Podcast, Oracle
  • Stephen Colebourne, Java Champion
  • Nichole Scott, Oracle
  • Regina Ten Bruggencate, Java Champion, JDuchess
  • Henrik Stahl, Oracle

Apologies, if I left you out. See you next year, San Francisco, Sunday 22 – Thursday 26, September 2013.

+PP+

 

DSCF4078
Java Client side desktop lunch with Jasper Potts [L], Richard Bair [R] is looking directly at Stephin Chin in the background, sitting to next Richard Bair with his right hand touching his left hand and watch is Sven Reimers

 

 

IMG_1219
This was supposed to be a clear view of Eddie Vedders from the Grunge Band, Pearl Jam, performing at the Oracle Appreciation Event

 

DSCF4082
Jonathan Giles at the Desktop lunch, which he organises with Stephen Chin, every year since 2010.

 

IMG_1176
Mac Book Pro Retina Display keyboard

 

IMG_1262
Of course, this conference fell on anniversary of Steve Job’s death – Someone wrote “SJ, please use TimeMachine and come back!”

 

 

 

+PP+

Moving Java Forward into The Future

September 30th, 2012 1 comment

Well now. I got here, San Francisco, on Friday night in one piece for another JavaOne 2012 conference. Sunday, today, is the first day of the conference. What will 2013 bring to the Java community world wide? What sort of technology will become more recognised?

I am actually very happy with the way JavaFX has been adopted. It started as this really hard to fathom thing in 2007, with Christopher Oliver. JavaFX Script was fantastic idea and those involved with graphics, rich media, and scene graph knew that Java had nothing to stand worth as competition against Adobe Flex, SilverLight and other technology. I was surprised as many have been in the time between now and 2007, how the mighty Flash and the markitecture of SilverLight fell to the way side.

I do not think this idea of thickness and size of an assembly, bundle or plugin was the entire story for Flash’s demise or Java on the Desktop to really take off. It certainly is the wariness of developers and business distrust of Microsoft technology that left SilverLight as being a corporate investment risk.

The Java platform is the success of the technology and the community around. I might bemoan the fact, the masses take an age to upgrade from J2EE to Java EE, keeping around old application server technology, like WebLogic Server 7, WebSphere 5, and IBM RAD 3, let alone moving to learning a new language like Scala or Groovy or something else. There is great warmth and comfort and a bit of patience around the Java platform. Oracle has to be congratulated for being a relatively gracious working steward and taking over the corporate mess of Sun Microsystems. JavaFX is a case in point.

Finally, we have a great scenegraph library and API that can deliver rich media, graphics and audio up to the standard of the early 21st century. Oracle have kept JavaFX alive, and supported Java EE and they should and will. I think with a little patience and a deliberate design it will all work out.

What is clear is to me, is that whole community deserves a global event where we all can meet up and see the state of the art. I expect exciting times are ahead for the whole Java platform and it will be up to the community to meet the challenges.

Here is my lanyard.

  Peter Pilgrim's Lanyard for JavaOne 2012

Here is Chris Oliver from 2007, the inventor of JavaFX Script and Form Follows Function (F3).  [Skip the first minute to get to Chris]

If you are at JavaOne 2012, say hello, and  feel free to chat about Java and the future. If you cannot be here, then watch the technology world press for details over the next few days.

+PP+

2011 The Year of Chasing Pavements

January 15th, 2012 6 comments

I remember the year 2010 for the FIFA World Cup Final in South Africa watching the amazing tournament matches on BBC TV. Sadly, 2010 marked end of the JAVAWUG, I stopped leading the Java User Group, because attendance to the monthly talks nosedived in the summer mouths. I had had enough of running a user group, even though creating the entity was one of the best decisions I ever took.  So I personally invested money in my own training, Scala Object Functional Programming with Martin Odersky in London.

The misery of Lloyds Banking Group with Halifax Bank of Scotland really reached it’s pinnacle in 2010. LBG had wasted an opportunity to innovate in the 2008 and 2009, whilst UBS had written off 40 billion Swiss Francs in the credit crunch, it had survived market dislocation of 2007 to 2008, and subsequently wrote off  less than a billion pounds. The government and the chief executive on 2009 forced through a unsatisfactory merger with HBOS, claiming that they were going create “one bank”, and then I knew the truth. Now everyone in the world knows the truth. They decided, in 2010, to invest in Microsoft Silverlight and deprecate / divest in any Java enterprise involvement. It was a punch in the face for me personally. I desperately tried to get out of the bank into another bank before the inevitable happened.  It would have been much better to be one punching out first than be the one who felt punched … Too late was the cry, then when I heard the news shortly after arriving back to work after JavaOne 2010. I left Lloyds, I laughed out loud, then not long afterwards, I read a blog Microsoft had then deprecated Silverlight itself, such is life, some say.

I really have bittersweet memories of 2011, like Adele, my relationship with software development, my career was over. I thought I would hold out for a Scala position inside investment banks in London. I only ever met one person in a bank who was actively developing with new Scala technology. To my own mind, all I found was lies, damned lies and recruitment marketing *noise*.

I almost quit software engineering with Java, because of stupidity, and personal distress, around the time of early Summer 2011, I wanted to just stop right then. I could have chosen a completely different path, but I was saved by fate. Ironically the riots in England happened two months later (August 2011), which meant it showed also that some of our young English people were just as upset, frustrated with their lot, circumstances and life and worries about the future. The economy was shot, we all knew it. I was young in the 1990s and suffered and rose through the downturn. Boom and bust then and it is still going on.

Companies were laying off more and more people in 2011. Listening to the news or watching the TV, we were constantly reminded of the pain, suffering of society. All of this, the very real lack of confidence, the downgrade of social expectations, reached a peak with a dwindling pool of disposable incomes, the worry of getting into ever increasing debt, a lack of vision from the main political parties, and missing solutions. I wonder just what it was going to take to get through. I had just become a JavaOne 2012 paper reviewer, which was a massive positive. I was going to JavaOne 2012, another positive, my talk was accepted. I received invitations to talk at the Silicon Valley code camp and JavaFX User Group, which more positives.  These were balanced by the negatives. I noticed empty buildings in the city and the interviews had dried up. I also observed the pained expressions of people really going through an economic downtown in London, as I was out and about, and then it took just one unsightly social event in Tottenham (ironically Adele’s hometown), to tip the balance.

Chasing Pavements for me meant also searching for a full time job and/or hunting down a lucrative IT contract. Adele’s song transposed itself in to juxtaposition of contemporary thoughts, about the compromises that anyone may make in their lives, and I found my asking the same questions over and over. Am I worth it? I hated this job-search-contract-win-thing, this constant thought at the back of my head, of introspective and retrospection. I hated it so much that almost stopped about thinking about what is so important. What is it about Java and Software development that I really like? Who am I? What am I about? What do I want to next? If that is the plan, how can I get there? So how will I live, survive and support a family?

At the beginning of the year, I thought it would be fantastic chance to get into Scala development role, whilst I still added my long hard worn experience in Java EE, Spring Framework, enterprise middle office development. I actually thought Scala professional development would have been some catalyst, an injection into the phase. With being out of work, I was free of the constraint of silos now could I get a role that uses Scala in some great project, probably in a financial role. What I found in the job market of 2011, was fire fighting roles mostly, just business-as-usual, keeping the engine fire going, and no chance to add a new technology or change. In other words, I found inflexibility, doubts and boredom. The amount of contract and job interviews that I attended where the interviewer wanted me to program Java like if the language was C/C++ was shocking. I learnt pretty fast to ask up front before going there. If I noticed multi-thread in the specification, I thought this is serious, I had better ask. In the end, I had to quickly blow out my Scala dreams in London and re-market myself [again] as a credible Java enterprise engineer again. It did not help at this time, that Scala was getting the wrong type of news on the Internet wires, people started to complain about Scala’s complexity, and there was suddenly a slug contest starting for the next language beyond that of Java. The final nail in the innovation coffin, at least for banking IT ,were the consistent questions. Do you know Java performance tuning or how to tune a JVM? Suddenly squeezing the last ounce out of Java was the name of the game, as well as, trying to tell them first, Java EE should take care of threads and two that they still not put business logic inside stored procedures in PL/SQL and a database. Ah well, I said. I did try.

There were even so laughable attempts to pair-program or show off just how supremely agile certain teams were operating inside of bank’s in my experience. I had a bad feeling practising agile or wounded version of SCRUM. I know because I attended many interviews where they wanted me to pair program as part of the recruitment process. In my view, investment banks, are the most dysfunctional areas in where to introduce XP programming or SCRUM. I wish you sincerely very good luck finding and retaining the very best and greatest of developers. This is because the idea of self-managed teams goes against the traditional financial IT project management grain of wood and the inflexible silo environment that the Agile manifesto sets out to improve. Luckily, there are better approaches at being agile, which could work inside a bank.

I began to see the word Agile as a severely crippled in 2011 and now cringe-worthy in 2012, and maybe because I listened and had been in the privilege company of one certain Barry Hawkins now. The word Agile by itself is now meaningless. I was so pleased, by the way, to have attended JavaPosse Round Up three times in a row (2009, 2010, and 2011) and yes I say to Barry, we should shoot Agile in the head and reinvent software development processes now.

In 2011, there were happy times and I have to say it was the great people at QCon London, the JavaPosse Round-Up, the ACCU Conference Oxford UK, JavaOne Review Selection Committee, JavaOne and Java-dot-net presentation team, Kirk Pepperdine and Heinz Kabutz, Stephen Chin, Silicon Valley Code Camp, and the entire Devoxx team associates and some cool friends in Menlo Park California who really made the year positive for me.

I am badly affected by the year 2011, I think. It is going to take me a while to get over it, despite the many successes that I happened to achieve. It still feels now, in January 2012, that I am glad to have escaped that one, I felt that I was just treading water in my own mind, and my own confidence has taken a severe low blow. Don’t get me wrong, of course, I know there are lots of people out there who are feeling worse than I do and have much more pressing worries. Hey, nothing feels like it, until it happens to you.

Also when you are searching for work that itself becomes unpaid work too. So bang goes my time investigating or researching interesting topics like Play Framework, Scalate, JavaFX or Scala or something distinctly completely non technology like learning a new language or playing a musical instrument. I hate job search for this sole reason alone, because it consumes all of your valuable quality time. When you are job hunting there is always thought running at the back of your head wondering if you are not doing enough of it, especially when you need to provide income, for your family and loved one, and soon.

The year 2011 has made me more guarded about communicating outside of cliqué of respected people. My desire to self-promote is weakened to point now where I do think hard – do I need to write that tweet? should I upload that photograph? I am more sensitive in 2012 than in 2010 when I was freely enthusiastic about running a Java User Group. Now, I tend to keep mum, clam up for a bit during a heated discussion, I observe the participants instead, actively watch and listen to the others before jumping up with my view. The benefit being that I have more quality control rather than an out pouring of quantity, especially when most of the stuff I see is everyone else’s rubbish. Besides nobody I know or who I am connected with tweets depressing psychological bullshit or downbeat personal vibes, like “I going to kill myself tomorrow morning” or “OMG my man has cheated on me! I found out he has just slept with another woman!”. It is all deeply impersonal, self-gratification mockery and it reeks of indiscipline, when sometimes all you should say is the real personal stuff in the time of need. Therefore, I predict I will continue to be reticent in my out-going communication well into 2012.

This week we heard about 3500 people to go, face the axe at Royal Bank of Scotland, inside the corporate investment banking division. The economic downturn has made fools of all of us. If it has not happened to you (yet) or you don’t happen care (too bad for you then), just pray it never ever does (death may take you first) and also lucky you.

January February March April
Planning Bathroom
InstallationInterview w/ Blackrock, HSBC, BarCap, JP MorganPlanning Java Posse RoundUp 2011 and vacation rental
Bathroom installation (1st half of the month)Attended interviews for various investment banks including RBS and Black RockJava Posse Round-Up 2011 QCon Conference 2011
JCP Panel Discussion
Won a Kindle Wi-FIOutplacement StartsSkills Matter Functional Exchange, Cuke-Up! Guest VIP pass courtesy of Wendy;-)Created my “Scala Adoption” talk with my JVM language and  knowledge predictions, uploaded it Linked-In.comTerry’s B-Day
Attended ACCU Conference 2011 OxfordPerformed my
“Introduction to Scala talk” at the ACCUMy B-Day

Interviews dried up for a while. I did not know why, but I started to worry about the prospects.

May June July August
Interview w/ Black Rock
Interview w/ CitiGroup, Interview w/ Credit SuisseRumours of Morgan Stanley Scala development interestKohsuke Jenkins SkillsMatterMy outplacement continued

Start your own Internet Online  business with Linked-inc.om

Catastrophe!

Clojure at CitiGroup (seriously)?! Yes CitiGroup were recruiting for functional programmers for their Risk Front Office divisionInvitation to JavaOne Selection ReviewScala Exchange at Skills Matter. Guest VIP pass courtesy of Wendy ;-)

A series of Mizuho Interviews – perhaps they should have been using Apache Camel or ServiceMix(?)

Clojure Dojo

End of Scala adoption my attempt at investment bank in London

Re-marketed myself as Java EE engineer – This Scala adoption did not panned out at all. It seemed me to be a lot of fear, uncertainty and deception to me.

Invitation to be 2011 JavaOne reviewer for call-for-papers ;-D Thank you Simon Ritter

A London consultancy interviewAttended Job outplacement workshops on Networking and Linked-In ;-) Interviews now dried up for the Summer

Reviewing JavaOne 2011 call-for-papers

JavaFX Session accepted for JavaOne ;-D

Booking travel for San Francisco in October!

Personal disaster recovery started with some real retrospective ;-/

Prepared my JavaFX 2.0 talk by writing demos for JavaOneTLC Presentation Pronto released on Android MarketConfirmed attendance to Kirk Pepperdine’s Performing Tuning Course in Crete next monthStructuring my own Progressive JavaFX talk outline for JavaOne 2011 in October

Aborted Collective Code-Camp event in London, I concluded the UK is not Crested Butte, Colorado.

Holiday in Lanzarote – quiet area, drives inland and site seeing (much do something like this together next year)

 

September October November December
Decided to look outside of banking IT for contracts and Java development roles Find new recruitment agentsKirk Pepperdine’s Java Performance Tuning Course
Enjoyable course and time in Chania Greece, a real highlight!Attended a couple of ThoughtWorks interview – a lot of brain and intelligent tests
Attended JavaOne 2011
(Thank you again Simon Ritter!) Performed “Progressive JavaFX 2.0″ talk ;-DAttended Silicon Valley Code CampJavaFX Sillicon Valley User Group, performed  talk for Stephen Chin and bay are community

Stayed with my friends Larry and Patti at their lovely house

Initial Interview with IB Boost Ltd

Interview with two “cloud” computing companies – 100+ JVMs on 32+ servers

End of personal disaster recovery for now

Interview with household-name broadcast TV company on Java and Agile

Interview with two Gaming Betting companies

ThoughtWorks UK interview process took far too long for my liking that I had to bail on them

Disastrous non-interview outside of banking that caused me to come to my senses!

Preparation for Devoxx University session w/ Stephen ChinInterview with IB BoostAccepted job offer IB BoostDevoxx 2011
University Session w/ Stephen Chin”Happy is a cigar called Hamlet”

Started work at IB Boost Limited

Regarding wider community Java stuff, I decided on non-involvement for a while at least.

 

Getting into IB Boost Ltd Returning to private life with no regrets, mulling my thoughts about my lucky escape.Family life, buying presents, gifts and enjoying festivities.Xmas at homeLooking forward to the next year 2012

IMHO the best recruitment agencies are ____  TBD  ;-)

IMHO the worst recruitment agencies of all time are  ____  “ballleeetttted!”

+PP+

Devoxx 2011 Interview with Oracle Tech Net

November 30th, 2011 Comments off

Here is my interview with Tori Wieldt of Oracle Tech-Net OTN Java.net . It took place at 2PM on Wednesday 16th, November 2011 at Devoxx. Enjoy.


I talked about JavaFX 2.0 release, what developers can actually do with this new Java language API around the scene-graph, media and audio capabilities. In this interview, on my laptop, at around the second minute, I demonstrated the Video Fracture JavaFX application, which took the Java Life Rap Music Video available YouTube video from JavaOne 2011 and then animated multiple of MediaViews nodes. It was the same demo from the University session.

I also talked about the JavaFX current 3D capabilities ( really 2.5 two and half dimension graphics) and also the improvements that I wanted to see for full 3D. Namely, I pushed the JavaFX to be ported to mobile markets as well as the desktop MacOS and Linux. Oracle should really think about building runtime against the popular smartphone mobile platforms, Mac iOS and the Android. I said that I was also very happy about the open sourcing of JavaFX.

You find the entire series of Devoxx interviewees on the excellent e-Learning service Parleys, which includes Stephan Janssen and my University session fellow Stephen Chin. For those pining for information about getting JavaFX running on certain Apple devices, the Scott Kovatch interview is worth watching.

California 2011 Part One

November 5th, 2011 Comments off

Which direction do you go in?

California 2011

Long walk along Geary Street on Saturday

California 2011

Walking past an example of small-scale scraper architecture

California 2011

Street tap dancing skills at SOMA, San Francisco, crossing of Old Navy Store, Powell Street station

California 2011

Destination reached, a shot from the building where Best Buy store located along Geary Street, 2.5 miles from SOMA. Blue Angels jets were flying by constantly.

California 2011

I passed through Japan town in San Francisco, along Geary street walk

California 2011

I am standing in Japan town

Silicon Valley 2011

Dave Briccetti (L) and myself (R) at the SVCC Sunday. We are both eating slices of pizza at lunch.

 

Silicon Valley 2011

Kevin Nilsson (L)

 

Silicon Valley 2011

Peter Kellner (L) announces the prizes on Sunday 9th October 2011

 

Silicon Valley 2011

Happy attendees for Silicon Valley Code Camp

California 2011

Santa Cruz, California. Unfortunately the rides were closed. Summer time had passed, the sea was freezing cold.

California 2011

Laughing Sally, Santa Cruz boardwalk

From Santa Cruz, I drove north back to San Francisco, across the Golden Gate brige to Santa Rosa. The next day I dropped by TWiT TV in Petaluma on my way to Bodega Beach. Thanks to Liz Romero for allowing me access to the TWiT facility

DSCF3007

Visiting TWiT (This Week in Tech) offices in Petulama, Northern California. The home of Leo Laporte and Sara Lane!

DSCF3009

The TWiT Wall in the foyer

DSCF3014

Sara Lane (R) co-hosts TWiT’s Tech News Today (TNT). Live!<.p>

 

DSCF3015

The portable studio rig on actual wheels

 

DSCF3016

Jason Howell co-host / producer of Tech News Today on sofa wheels. Literally and real life.

 

DSCF3022

The Tech News Today today team co-host (R) Sara Lane, host (M) Tom Merritt and (L) co-host Iyaz Akhtar.

Steve Jobs, a Genius in Thought Leadership and Creative Product Visionary

October 6th, 2011 2 comments

 

stevejobs

 

One of the greatest technology leaders that ever lived and probably ever walk this earth. RIP Steve Jobs, Apple Chairman and former CEO http://www.apple.com/stevejobs/ ( Applause ;-D *)

Hewlett Packard –> Atari –> Apple –> Next –> Pixar –> Next –> Apple

 

Quotes From Commencement Speech at Reed College

 

“Sorry to be so dramatic: but your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma — which is living with the results of other people’s thinking

“Most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.”

“Stay Hungry. Stay Foolish.”

“Be insanely great.”

 

How Steve Influenced My University Days

 

It was now a time ago, in the late 1980’s when I attended London South Bank University. Whilst reading my the later half of my Science Computing degree, I wrote many assignments on an expensive colour Apple Macintosh IIgs computer in the, then, very dignified department only, computer lab. Especially, I loved the black and white user interface of Macintosh. It was a light years ahead of the MS DOS based IBM PC compatibles of the time. The tool of choice was WordPerfect, a proper word processing application. In those heady days, Apple Mac computers were prone to viruses and infections, and hackers even then, which meant that the administrative department gave out special 3.5 disks with a Disinfectant program.

The experience of the earlier Mac user interface, Windows Icon Mouse Pointer, borrowed from the seminal research of Xerox PARC in Palo Alto, lead to my early interest in user interface programming. If Steve Jobs had not gone for perfection, pushing his knowledge of art design, calligraphy, his philosophy, I never would have viewed this technology at university. The first impressions of a beautiful user interface, graphically proportioned and in colour for the day, left me great thoughts about a career in programming graphics and software development.

Those first impressions of quality business application with graphic user interface were not lost on me.  It lead to a job programming years later in the 1990s, on SunOS 4.1 workstations and X Windows / OSF Motif programming. Although, I never got to develop HyperCard applications ( I had no interest in that technology and there was too much work to be done on other bachelor degree assignments), the inspiration of the user interface, the slickness of the user experience left me wanting more. I took some of these inspirations also to Borland Turbo Pascal programming on MS DOS as part of the final project of my degree.  

About the time of my finals, I think in 1989 or 1990, I read two biographies one was about Bill Gates and other was about Steve Jobs. I borrowed both books from the South Bank University library. I am very sure that the latter was called The Journey is the Reward, which was published in 1987 and written by Jeffrey S. Young. It was a fascinating read and really engrossing story of Steve Jobs’ earlier career. I remember the chapter called Lobotomy, where he was ousted from the computer company that he had co-founded in 1976. On the day that he was chucked out, I think Wozniak and some other staff members were worried about his state of health and mental stability, and they cared enough. They made sure that he was ok. Steve Jobs lived quite frugally, in fact, walked bare feet in his earlier life, and lived on his own, in a big house in the valley. They need not have worried, because Steve Jobs, was never ever going to top himself. He dusted his self off, over a couple of months, and then founded NeXT computers, and helped John Lasseter create Pixar Animations.

Reading that the story of never-say-die in 1989/1990, being adventurous, being a hippie, and traveling to India, and then watching and reading to his commencement speech at Reed College in 2005, yesterday, I definitely felt touched, and inspired today and back then.  Especially right now, today, as I reflect on the “down” periods of my life. It made me say, “So bloody what! If these other people do not understand me now. It is more important that I understand myself.” That was the core message that should never be buried, lost in the ether, a lost signal in random white noise, or be enveloped by other people’s agendas. Steve Job’s core message deserves be sticky.

Stay true to your own goals, because you only have one life. Ever. And it is a precious one. One.

 

Miscellany

 

New story UK on the BBC Link

*In Italian Football, at sports ground, traditionally the fans clap instead of stay silent in order to show a mark of respect. I like this.

Watch the CNN tribute to Steve Jobs on YouTube

Business Insider published 13 most memorable quotes from Steve Jobs

The iPhone Dev Team [a group of international socially responsible hackers] who unlocked and jail broke the firmware for iPhone in various generations 1G,3G,3GS put a simple tribute on their blog

(spelling and grammar *PP*)