Monday, December 27, 2010

Java Not Supported on Chrome OS, Yet

Java technology is not supported on Chrome OS yet. This may not be good news for Chrome OS since so many web apps are powered by Java technology. I guess if the front-end development migrates to HTML5, Javascript, CSS and other lightweight browser-centric implementations than Java will not be a factor. This is probably quite a few years into the future though. So, for the present, Java support on Chrome OS is highly desired and would be beneficial to cloud-computing.

Since Google AppEngine already supports Java and Android is based on Java this should not be to terribly difficult to accomplish.

Thursday, December 23, 2010

Migrating from Delicious

With the recent uncertainty surrounding the future of Delicious social bookmarking site, I started using Google Bookmarks on a daily basis. I noticed that the services are very similar except for the delimiter between tags. The tag delimiter in Delicious are spaces and in Google Bookmarks it is the comma character. This takes some getting used to since I have been using Delicious for years.

Google Bookmarks needs a tag cloud user-inteface display. It may already exist but I have not found it yet. Just a matter of time to making this happen.

One last thing is that it would be nice to implement an import Delicious bookmarks with tags and notes and automatically transform them into the Google Bookmarks format. Hopefully, Yahoo! sells off Delicious and it will continue as a bookmarking service. I have come to depend on Delicious for research purposes and migrating to another service has its impacts to my daily online productivity.

Sunday, December 19, 2010

Chrome OS Notebook Cr-48 Impressions After the First Week

Since receiving my Chrome OS Notebook Cr-48 from Google last weekend, I began using it as a replacement of my Acer netbook which I use daily at home for all things a netbook was designed to be for the past week. I can gladly say that Chrome OS has entirely replaced my netbook for the past week without any pain or changes to my personal online browsing behavior one bit. I have been using my Linux netbook since Fall 2008 on a daily basis so this transition was not a difficult one at all.

There are a few rough edges in the Chrome OS user experience compared to just my trusty netbook. In Chrome OS, the built-in Adobe Flash support is not reliable. This has been widely observed and reported. I have seen this behavior in the past on my Mac OS X Tiger 10.4 prior to upgrading to Snow Leopard Mac OS X 10.6. Flash now is rock solid on my Mac. As for Chrome OS in its current release, Flash crashes often in Chrome OS, especially when switching between various tabs in the browser. An update to Chrome OS that was pushed on Day 4 of my using it resolved quite a bit of the crashes but not all of them. I am confident this wil be resolved as ChromeOS matures.

Flash loads itself OS wide in the ChromeOS so it effectively crashes all the tab instances in the Chrome browser. Google or Adobe needs to fix this and make the Flash support isolate itself from other tabs and pages. Maybe Flash 10.2 will resolve this behavior. Or Google can design a way to isolate Flash from other tab instances in Chrome. This problem has been acknowledged by Google and Adobe and they are working on fixing this as a top priority. "Flash Player for Chrome Notebooks" On an additional note, Google is already working on this "Chrome Adds Flash Sandboxing" so it should be pushed as Chrome OS update soon.

The touchpad tracking in Chrome OS sometimes is inconsistent. This I can attribute to the beta nature of Chrome OS and the Pilot Program. The touchpad does not always track drag-n-drop operations. I am confident this will be resolved by Google in future updates to Chrome OS.

In the browser, there no convenient method to switch between browser window instances without using the keyboard. This is a user-interface design feature that should be easily resolved by the Chrome OS team. I have send feedback making the recommendation that ChromeOS implement a button, right-click menu action, and touchpad multi-touch gesture that performs this function. The touchpad multi-touch gesture should be the familar sweep right or left similar to how the scroll up and down currently works.

On the hardware side, a locking slot (Kensington type) is missing from the actual Cr-48. This is an easy fix on the hardware for physical security. Additionally, an input for external microphone is needed. When I was using GMail Call Phone, this became an apparent need. This is also another easy fix to the hardware design.

Other than that, Chrome OS is relatively solid and in my opinion will be one potential future platform where the cloud is more important than the hardware. The rest of the world needs to catch up to cloud-computing from an end user perspective and change their habits. Since I have been working in the cloud for several years now, the change to my user habits is very minimal. I have been a user of Google Docs since it was in beta and already made the full transition to using cloud services for everything Google Docs provides years ago.

Oh yeah one last thing on hardware is processor speed. The more the better. The Cr-48 apparently contains an Intel Atom N455 1.66Mhz chip which I think is sufficient for netbooks but not a notebook. With the larger 12.1" display, a much faster processor is needed. Especially for handling the fullscreen video. Or maybe integration of faster GPU such as NVidia, AMD, or others. This type of hardware is already on the market so as Chrome OS nears public launch sometime in 2011, I am sure the publicly available devices from various manufacturers will meet this requirement.

Chrome OS as a netbook replacement is a no-brainer. As a notebook, well there some things that Chrome OS can not replace yet. If you are doing any type of development work (applications, multimedia authoring, music editing, etc.) then Chrome OS is not yet mature enough to handle these functions in my opinion. The potential is there but the reality is that cloud services and tools are not. For instance, there is no Eclipse or NetBeans for the cloud IDE yet. Cloud development IDEs are beginning to emerge (i.e., Cloud2Code) and other tools such as Pixlr, Picnik, Creately are making serious progress for the cloud tools marketplace.

I have seen others post that Chrome OS in 2011 will be nice Windows NT 4.0 and Mac OS X 10.0 when they were first release. Chrome OS represents the beginning of a shift in user behavior and a new platform. I suspect in about 2-4 years from now it will be widely used as the cloud industry matures and more services are developed. Joe Wilcox over at BetaNews has published some really insightful viewpoints comparing Chrome OS in 2010/2011 to Windows NT4 and Mac OS X 10.0. See "Who is the cloud for?"

As a personal music device, well I use iTunes and have an iPod which is not available as an cloud service. I already have a large personal music collection so using Pandora or Slacker is not an option. Maybe some type of iTunes like services that lets me leverage cloud storage or local network accessible storage servers is in the works. The Apple 'walled garden' will not work for my personal collection of digital music. Sounds like an area for cloud innovation to me. I wish I had the time to work on something like that. I wonder is anyone is working on something like this? Hmm. I am quite sure some one is but just have not discovered it yet.

For personal online video, Chrome OS shine except for the Flash issues and underpowered CPU. HTML5 and WebM stuff all work great. I have tried this on YouTube and have not had any issues with HTML5 video streaming. Hulu works fine... NetFlix is not yet available. For video editing and authoring, YouTube has some nice editing features available now. But for professional level work there is much room for cloud innovation.

If the cloud really takes off in the next five years, I am sure the development community will adapt accordingly. For now, Chrome OS will works as a netbook replacement and web browsing device. If you use cloud applications (web-mail, Google Docs, Pixlr, Picnik, etc.) it will serve you well.

Friday, December 17, 2010

Yahoo! Closing a Few Services

Following a layoff announcement, Yahoo! has just announced that it plans to close down a few very popular services such as Delicious, AllTheWeb, Buzz, etc. "Yahoo! to close Delicious" I have used Delicious quite extensive for social bookmarking since 2008. I have thousands of bookmarks with quick notes about several of them that I use every day. In light of this, now I have to migrate my Delicious bookmarks to another service. I was evaluating Google Bookmarks this past summer but now I am forced to make the transition.

I have saved and exported my bookmarks from Delicious but now the task of migrating all my tags and notes will be a bit of a pain. The features and behavior of Google Bookmarks is comparable to Delicious.

This is one aspect of the web, cloud services, and using online services that is a point of frustration for me. This is not the first time I have had to migrate from one online service to another. I thought that Delicous being so popular was well supported by Yahoo! so it should be immune to exactly the type of service interruption that is occurring soon with Yahoo! and Delicious. So this time, maybe Google Bookmarks will stick around for at least another 20-30 years.

Wednesday, December 15, 2010

Chrome OS Updates Itself Seamlessly

On Day 4 of using the Cr-48, Google pushed an update to Chrome OS. The OS update process everyone is accustomed to (i.e., Windows, Mac, Linux) usually takes quite a long time. On traditional operating systems such as Windows, Linux, and Mac OS X, this normally means stopping what you are doing and waiting for the OS to download the updates, verify, apply, and then restart the OS. This is typically a 5-30 minutes evolution depending on the size of OS update.

The traditional (non-cloud) OS update process can be entirely disruptive to what you were doing and means you have to wait until the OS is done updating itself. The restart and logon can take an additional 2-5 minutes depending on your particular configuration.

Google Chrome OS update took about 30 seconds total time to update itself last night. I was shocked to say the least. This includes shutdown, restart, and logon. For some rough numbers Chrome OS logon process is about about a 10-15 second process, shutdown is about 1-2 seconds, restart is another 5-8 seconds.

On another note, the Chrome OS sleep/awake process is virtually instantaneous. It occurs automatically when you open and close the lid of the notebook. The sleep/awake cycle on my Mac takes about 5-10 seconds; on Linux about 8-15 seconds; on Windows about 10-20 seconds depending on how it feels that day.

For a time starved home user, this is the most painless update of any OS I have ever experienced. Less time waiting for the machine and more time spent online.

Saturday, December 11, 2010

Chrome OS Netbook Cr-48 Beta

I received an unexpected email from the Chrome OS team to sign up for the beta Chrome OS Notebook Beta... responded to it. I verified the sender and responded to the e-mail and crossed my fingers. To my surprise, two days later, I received a box from UPS Ground containing a the Google Chrome OS Notebook Cr-48. I am shocked. This is a very limited release beta program.

This is like an early X-Mas present from Google. The next few months is going to be fun and interesting.

Saturday, November 13, 2010

Skills and Best Jobs for 2011

According to the recently published CNN Money Best Jobs in America 2010, Software Architect is #1. Being an architect myself, 2010 has been a good year. I am not sure what the CNN Money criteria is and knowing that surveys are dependent on statistical sample populations, the results should be taken at face value as published. However, it is nice to know that software engineering is becoming a bright spot again after several years of economic downturn.

The outlook for 2011 even looks good according to this source "11 Hot Skills for 2011". Project Management skills and a broad range of experience that spans systems engineering, security, and business acumen are critical. Architects must have demonstrated technical competence and be highly creative which earns a baseline respect among peers and customers. These attributes as well as highly tuned skills in project managements, leadership, and most importantly the ability to communicate well and work with diverse sets of people on every task are essential for success.

We shall see how 2011 and the next few years evolves. For now, this is a bright spot and being an optimist I agree with the surveys and assessment.

Thursday, November 11, 2010

Whiteboard Warrior

From an agile modeling (AM) viewpoint, the Whiteboard Warrior moniker as dubbed by Scott Ambler is suitable for the modern agile world. Modeling is not just about using specific modeling or CASE tools. It is about techniques, communication, and abstracting ideas into graphical form that can be translated into working technology solutions that happen to have a software component.

Over the past twenty years of having used paper, whiteboards, drawing tools, diagramming tools, flowcharting tools, then CASE tools, then modeling tools (lightweight and heavyweight) etc., the one common denominator has been the ability to visualize graphically my ideas. The tools and notations tend to evolve over time but the modeling intent remains consistent. The one tool that has stood the test of time has been the whiteboard, paper, and pencil/marker/pens technique. They can be done anywhere, and at anytime. Even when you don't have the paper or pen, you can do it in the dirt/sand or on napkins at a restaurant/bar.

Many innovations and breakthroughs have been conceived and communicated on napkins.

Apache Shiro has Graduated from the Incubator

Apache Shiro, the Java security framework, has officially graduated from Incubation. This actually occurred in September but took a few weeks to get its main web page updated.

Thursday, October 28, 2010

Programming Languages 2010

I thought that the article that InfoWorld published recently is timely and relevant, "7 Programming Languages on the Rise". What surprised me was COBOL on this list. Seeing Python, Ruby, Javascript, Perl and Erlang all make sense. The argument behind COBOL is that it still runs the guts of many financial and health systems which were the first ones to integrate computer systems into the enterprise.

Java, C/C++/C#, and even PHP tend to dominate the headlines today as expected. With the modern internet and "big data" that tends to exist today, widely used scripting languages (Javascript, Python, Perl, Ruby, MATLAB) are gaining ground. The AJAX-driven rich internet continues to make these languages viable. CouchDB being mentioned with ErLang + Javascript was a surprise.

Thursday, October 21, 2010

Apple support for Java

This is entirely unexpected from Apple. There are rumors circulating around the web that Apple will not be including Java in its next release of Mac OS X 10.7 (Lion) next year. "Apple not committing to Java support in Mac OS X 10.7"

Since this is only a rumor, I have to take this with a grain of salt. But, based the Apple/Adobe fiasco earlier this year it would not surprise me. The Mac has been the my Java development platform of choice so far. I think this would be a mistake. It makes me wonder if this has something to do with the Oracle acquisition of Sun.

Sunday, October 10, 2010

Self-Driving Cars, aka Auto-Drive

This is an innovation that I have been wanting to see since the 1980s. At any rate, Google has been experimenting with self-driving cars that use their cloud services to navigate. "What We're Driving At" is the blog post that announces what they have been up to in playing with self-driving cars.

Google's engineering team are the students from CMU and Stanford that participated in the DARPA Grand Challenge series. The Stanford team ended up winning it in 2005 and the CMU team won the DARPA Grand Urban Challenge.

Imagine the changes to society if self-driving cars became the norm. The amount of additional productivity that would give back to everyone that commutes is in calculable.

Thursday, September 23, 2010

Agile and PMI Debate Continues in 2010

In the "Two Worlds Collide: PMI and Agile", a recent PMI Network article apparently has stirred the pot of the ongoing Agile vs. PMI debate. Having worked in both PM-centric and agile environments, making them co-exist is possible. Both sides have the same goals. Their means and focal points a just different. I didn't really see a conflict in the recent PMI Network article, "The Sweet Spot", but that is just my perspective.

It basically states a viewpoint. Agile or PM-centric is just another component in the arsenal of tools for leaders to solve problems applying 'peopleware'. On a positive note, at least everyone continues to debate this issue.

Tuesday, September 21, 2010

Google Web Toolkit Tools for Java

Google acquired the Java tooling division of Instantiations and just rebranded and re-released their suite of Java tools for free. Wow! This is some really high-quality tools for the Eclipse Platform and IDE. Here is the Google Web Toolkit Blog announcement, "Google Relaunches Instantiations Developers Tools - Now Available for Free"

In this suite includes GWT Designer, WindowBuilder Pro (Swing, SWT, GWT, XWT, RCP), CodePro AnalytiX, and WindowTester Pro.

This was unexpected but a welcome early X-Mas present for Java developers!

Sunday, September 05, 2010

Chrome 6

Google released Chrome 6 and I have just decided that is has earned the Default Browser status on my personally owned computers. (Mac, Linux, and Windows). This used to be the throne where Firefox but now I feel that speed and simplicity is king when it comes to web browsers. Chrome 6 arrives just in time for cake provides a respectable overview of what's new in Chrome.

Saturday, August 28, 2010

Where is Mobile Net Access?

Yesterday, my 10-year old son was asking me questions about the radio in the car. As I was explaining to to him the different channels and frequencies (AM/FM) he then asked, "so where is the access point?" Good question I thought to myself. Where is the access point for the in-vehicle entertainment system? I am sure he implied WiFi access point.

So I showed him and explained where the antenna was embedded in the glass windshield and in the rear glass window. Then I started thinking, what he really meant in his question was the WiFi access point for the car. In his life, everywhere he goes there is free WiFi as long as you are within range of the 'access point'. At least that is his perception of it. His laptop computer, PSP, DS, netbooks, PS3, and almost all these devices that he deals with at home and school on a daily basis all have built-in WiFi capability.

This is definitely one question I equate to "Where are the flying cars?" that I had in my head since I was around his age. It's the 21st century and we still do not have them. Therefore, I hope in the next 20-30 years that mobile net access does not turn out like the visions of flying cars has for my generation, a vivid imagination and elusive dream.

At least for the ubiquitous mobile net access everywhere, the technology hurdles are not mechanical in nature. We already have all the components available to make this happen. The companies and governments trying to solve this problem keep running into techo-political wars. It's all just techno-politics and battles now.

Thursday, August 26, 2010

Call Any Phone from GMail

Google released a new capability of GMail, calling any phone from within GMail yesterday, 08/25/2010. Call Phones from Gmail. So I got around to trying it out today, 08/26/2010. I am impressed.

Google's web applications and services are just becoming stickier.

Wednesday, August 18, 2010

The Patent Parts of the Oracle vs. Google Android Lawsuit

This article is a nice diversion pertaining to the patent details of the Oracle vs. Java/Android lawsuit, "The Oracles vs. Google Patent Lawsuit Demystified". This one made me chuckle. The five alleged patent violations are questionable and appear to fit the frivolous category.

Sunday, August 15, 2010

Oracle lawsuit against Google over Java and Android

This one was sort of expected after Oracle acquired Sun. So now we know what Oracle's true intentions are for Sun's Java technology. When I first saw this news my initial reaction was one of disgust. Then after reading quite a few articles, opinions, and various other blogs I came to the point that this was anticipated. It just took a while after the Sun acquisition.

On a related note, Oracle also is canceling OpenSolaris which was announced in the same week. So as for Oracle's open source support, we now know which way the winds are blowing with Oracle at the helm of Java. Not to mention the JDK 1.6 fiasco a last month with Eclipse which was an early warning shot. "Oracle's Java lawsuit undermines its open source credibility" has a well written perspective on these recent events.

Sunday, July 18, 2010

Product Version 4 and Apple

The vulnerable Version 4.0 hex has afflicted Apple. The iPhone 4 and iOS 4 appears to have caught the version 4 hex. The Version 4.0 label has affected many software and IT products over the past few decades and continues with the latest Apple fiasco since Apple released iPhone 4 in June 2010. Regardless of whether or not there are really any issues with the iPhone 4's antenna or the iOS 4.0's algorithms, Version 4 has affected Apple as it has past technology products in the IT industry.

Sunday, June 27, 2010

Great Overview of Android and Java

Here is a really good overview of Android and Java, "Embracing the Android awesomeness: A quick overview". It describes the Dalvik JVM, Android SDK, and Android NDK. The NDK is the Native-code Development Kit which is a companion tool to the SDK tat lest Android application developers build performance-critical portions of their apps in native code.

Saturday, June 19, 2010

Editing Video in the Cloud with YouTube

YouTube has recently announced that you can now edit your videos all within your browser. Check out this blog posting. This is really impressive. So now you can edit videos, create a new mash-up of videos, and even add audio to it all within your web browser!

Saturday, June 05, 2010

Agility and the DoD

The DoD is looking at Agile development techniques more seriously lately. The "Command and Control" Gets Agile explores recent developments. Like any large organization, becoming agile is not just an initiative but a fundamental cultural and organizational change. At least this is acknowledged in 'The Agility Imperative' and related topical discussions taking place within the C2 circles.

What is not surprising is the how open source technology has been successful in non-DoD organizations as stated in "Agile can help DoD save its projects". A consistent organizational pattern emerges where agility is successful on a limited scope implementation but not on a larger enterprise level. So the on going question is, how to implement agility into the existing bureaucracy? Yet another viewpoint is described in "Agile and the DoD" whitepaper. Time will tell on this one.

Monday, May 24, 2010

Graphs and Disruptive Database Technology

I read a really good article recently about graph databases and the NOSQL (Not Only SQL) movement that has been rapidly changing the web. "Graph Databases, NOSQL, and Neo4j" This article is highly technical computer science and has a lot of useful links and references. Plan to keep an eye on this stuff since it is where database technology and web development is heading.

The transaction-less CAP-theorem and BASE (Basically Available, Soft-state, Evenutally) systems theory are of particular interest. A good argument against why the tried-and-proven ACID theory no longer always works on the web is presented and makes a lot of sense.

The article does a nice Neo4J description and walkthrough.

Sunday, April 11, 2010

Adobe's New Development Tools for 2010

Adobe is moving in the right direction with Flash Builder 4 based what I have read. "Adobe Launches Flash Builder 4" provides a good overview of its features. There is a new component framework supported in this release called, Spark. Here is a brief Spark overview and a sample Spark application.

Of real interest is the Catalyst expressive design tool mentioned. Read more about Catalyst in the Adobe Labs.

Father of Java Resigns and Comtemplates the Future

This is a notable news item more for historical purposes of the Java technology ecosystem, "Father of Java" Resigns from Sun/Oracle. My initial reaction to this is a bit of sadness since John Gosling has been a instrumental leader for Java technology. I wonder if IBM or Google is talking with Mr. Gosling. He will be missed but I think his decision is a good one.

The future of Java innovation and where Gosling ends up will be something to watch. Here is John Gosling's blog entry announcing his decision. I think this graphic says it all.

Friday, March 05, 2010

Java on Android better than iPhone?

Google Android has only been available for a short time compared to the Apple iPhone and it is already showing its prowess as a serous tool. Java is the underlying foundation for Android and thus its power. "Where Android beats the iPhone" provides an excellent argument as to why Android has some serious advantages over the iPhone.

If you know Java and use Eclipse, you are only a few hours away from creating your first Android application. Some really impressive features on Android are GScript and Remote DB. GScript allows you to create small applications that allows the saving/editing and running of shell scripts from within Android and fire them off with a tap. Remote DB lets you turn any SQL query into a button that searches the database remotely, then displays the results.

Here's an interesting point from the InfoWorld article:
"While Java programmers will feel right at home with Android on Eclipse, it isn't just for Java programmers; the phone can run any language embedded in Java. Projects like Jython and JRuby are great solutions, and dozens are out there. There are similar options in the iPhone world, but they're crippled by Apple's fear of meta-programming and the evils that can be done with eval."

Establishing an open ecosystem and leveraging Java is where Android shines. The integration with Eclipse in particular is where minimal training is required for experienced Java developers. This is definitely a mobile platform to watch if you are a Java developer.

Saturday, February 27, 2010

Myths About Older Developers

I saw an interesting article about 'older developers', "Five Myths About Older Developers" which is an very relevant topic. I have been in the software engineering business professionally for 20 years now and have the perspective of the developer, team lead, architect, and project management viewpoints. The blog post, "Five Pervasive Myths About Older Developers" is an excellent discussion of this topic. The ServerSide discussion response threads about this topic are all lively and thoughtful.

What is particularly surprising to me is the notion that Java has become the new COBOL. The Java ecosystem exhibits many of the characteristics of what happened with COBOL over its history. However, I think Java is more dynamic and is continuing to evolve and adapt.

On another point, ageism is a area of interest to me in organizational behavior so this topic that will continue to be in the forefront in the software engineering business as our field continues to evolve.

Monday, February 01, 2010

Online Photo Editor, Pixlr

JAlbum recently released its online web application that includes an online photo editing tool, Pixlr. Pixlr is a very useful lightweight photo or image edit tool. Pixlr includes a Windows screen capture utility and a Firefox plugin, called Pixlr Grabber.

I tested the online photo editing tool, Pixlr Editor, and was able to import and crop images from my local machine with no problems. This is really impressive and just simply works.

Saturday, January 09, 2010

OpenGL and DirectX Dilemma 2010

The graphics API wars and the business as usual tactics employed by Microsoft continue. "Why you should use OpenGL and not DirectX" contains a very good overview of the Direct3D vs. OpenGL (back in the late 90s) and the current DirectX vs. OpenGL debate occurring today. This blog posting, "OpenGL instead of DirectX" provides an excellent overview of the advantages OpenGL has and a concise recap of the historical debate that has occurred in the gaming development industry. Seems that many gaming developers today have forgotten recent history.

At any rate, the bottom line is OpenGL is for the future (OpenGL supports Windows, Mac, Linux, iPhone, Android, PS3, Wii, DS, PSP, etc.) and DirectX is being driven by typical FUD (fear uncertainty and doubt) that Microsoft has been successfully using for years. So if you are a serious game developer and want to support the future of gaming (i.e., mobile and web-based), then OpenGL is a very logical choice. Choosing DirectX will locks you into Windows and XBox only which is what Microsoft wants you to do. OpenGL opens up all the best modern platforms and future mobile/web/cloud platforms of the future.