Most application software development team members are aware of and work within the framework of Project Scope, but few are aware of the importance of Solution Scope. Project Scope is usually defined by the Project Manager and defines the boundaries of the IT business solution project. It defines what areas will be in scope and what is out of scope for the project. Project Scope may also document the assumptions and constraints noted for the project. For example, an organization, with manufacturing facilities in Cincinnati and Dayton, is considering an enhancement to its customer invoicing application; the project scope could state that “this enhancement is to change the cosmetic look of customer invoices produced by the customer invoicing system”. It could state that this enhancement will affect only one, or a set, of customers and not other customers. The project scope statement should also declare what is out of scope for the project. Such as, “this project will not consider Order Entry and other Customer Service or customer complaint systems, as well it will not consider Accounts Receivable and other financial systems”.
The Solution Scope defines the new capability that the IT business solution will contain. The purpose of the solution scope is to conceptualize the recommended solution in enough detail to enable stakeholders to understand which new business capabilities an IT business solution will deliver, or in other words Create Shared Vision. By creating shared vision concerning the IT business solution at this point in the project you can decrease focus of the project to that solution scope, reduce scope creep, that can reduce project timelines and free up project resources sooner, increase stakeholder satisfaction at the end of the project. This increases the probability that the project will be deemed a success.
Take our example above, the solution scope will state exactly what is changing about the cosmetic look of invoices, such as “the company logo at top of the invoice will change to the newly adopted logo, the bill-to customer name and address will print to the right of the ship-to customer name and address on the invoice as well as the date printed will change to Day, Month, Year format (i.e. 15 August 2011) from its current Month, Day, Year format (i.e. August 15, 2011)”. Just as Project Scope declared what was out of scope for the project, the solution scope declares what is out of scope in relation to the IT business solution. “This enhancement will not change any calculations as to price or discounts that customer receives. This enhancement does not change how data is displayed on the invoice or how it is retrieved from the database except for the changes defined in this enhancement, meaning that item descriptions, quantities, unit of measures displayed will not change.”
So engage the Business Analyst early in and throughout the project to define and manage solution scope to keep the focus of the project, This helps the organization gain the many benefits stated above.
BA: User Experience Practices, part 1 of 2
As a Business Analyst (BA) we are often asked to help design a new user interface and the supporting application to perform a required function in the Enterprise Resource Planning (ERP) system. If you are talking about a web interface you may work with a graphic designer, or perhaps not. You go off with your business application development design team and create a mock-up of the interface and write a design specification describing how it is to be built. Often the business is not represented on the design team. The design team may pass the mock-up and design specification by a business Subject Matter Expert (SME) before attempting to get it approved; but then they are often approved by a business manager without ever being seen by the end-users that will actually use the new application. Often, features and function are primary concerns when the design is being created. What if we change focus of our design team?
I would like to introduce two concepts to which I have been recently introduced—Personas and Usability Testing. These two concepts are the main concepts of User Experience Practices. The purpose of User Experience Practices is to change the focus of the design team from features and function to the users the new application is to serve and usability of the application. Have you ever rolled out a new application and user interface to find out that the users hated it or even worse refused to use it? Have you heard of times new applications were rolled out but they did not make the user’s job easier or save them time or have any added benefit to the organization? Designing for User Experience would have changed those outcomes. Let’s look at these two components and see how they are used.
A Persona is an artifact (written document) that consists of a narrative relating to a specific user group. It should include a picture and an abstract name that you can live with. So don’t name your Persona Mickey Mouse, name it Stan, Ned, Alain, or Liza instead. You don’t name them after actual people in the organization but use an abstract name that represents a group of people. Say you are a BA working with a design team that has been charged with designing a new Order Entry system. So what user groups (customers) is your new application going to serve—Order Entry/Customer Service clerks. Yes, the company has six manufacturing locations with at least two Order Entry clerks in each location; the larger facilities have as many as eight Order Entry clerks. So what Personas do you have—one local Order Entry Clerk, let’s name her Emily and she represents eight order entry clerks. In some instances you may find it necessary to have two Personas to represent this one group. The remote site Order Entry clerks will be represented by one or more personas. Who else—what about Sales Representatives that can enter orders as well. The Company has 16 Sales Representatives; 13 of which enter orders on a weekly basis, one who will enter an order or two every month and two who never enter orders. Sounds like three more personas, maybe more. Not considering reports that Sales or Upper Management will want out of the system, as these are often pulled out of the database after the Order has been entered; what about Inventory Management/Purchasing. If an Order Entry clerk enters an order that uses any extraordinary large amount of a raw material if Purchasing is not aware of it until tomorrow’s report comes out, in a day or two the manufacturing plant may be out of that raw material. Therefore, my Order Entry system must send an “alert” message to Purchasing for extremely large orders so that they can account for that material used and keep the manufacturing plant working. How about external customers who have to get the order to our company, they have to call the Customer Service Representative (CSR), how long do they have to stay on the phone with the CSR to get the order in. What if the customer sends their order in via EDI; so an IT persona is needed. Fax, email, XML file—all acceptable ways of receiving a customer’s order; these are often handled by a CSR or IT, but we may want to build an automatic process to enter these customer orders. These methods of order entry need to be specified on the external customer, CSR and IT personas.
The Persona Map—now that you have written all your personas, we need to focus on the important people that our new interface and application will be used to support. So take a very large cardboard poster and draw a target (bulls-eye). In the very center will be our Primary Persona. The one most affected by our new interface, probably the CSR/Order Entry clerks; but you can only have one, so we select Emily. In the inner ring of the target you can place two to three Secondary Personas. In our example, this most likely will be other local CSRs and remote CSRs. In the outer ring of the target you can place three to four Tributary Personas. For our example, possibly Sales Representatives Personas and possibly IT personas. Now this Persona Map should be hung in the room where the design team will work, or if necessary duplicated and given to every design team member. Now we have changed the focus of the design team from features and function to the people who will use the new interface and application.
This is the first step of designing for User Experience. In my next post we shall explore the second step—Usability Testing. Even without knowing about Usability Testing, can you see the power that Personas can have?
Has IT Become Irresponsive to the Business?
For those of you who have wondered where I have been, I am happy to say that I was in the Bahamas. I took a long deserved vacation with the family to the Bahamas. The cruise and the trip were excellent. Now I come from the 80 degree sunny weather of the Bahamas and Florida to the 20 degree snowy weather of Cincinnati, it just doesn’t seem fair. No, I was not in the Bahamas for a month or two months, but getting caught up with everything takes time.
Recently, I have been pondering the question “Has IT become irresponsive to business requests?” As I go from organization to organization I look at the time it takes from
request to solution implementation and I am dumbfounded. For those of us who have been in application development services for awhile remember that what use to take a day now takes a week, or longer. Yes, we have things like Sarbanes-Oxley (SOX) and other regulations to thank for this; but also I see that organizations themselves put so much process into their developing of IT business solutions, that the time to fill a business request gets longer and longer. Let’s take a look back to see how this happened.
In the beginning there was chaos. The business manager, needing a widget, made a request to the IT manager, the IT manager handed down the request to the developer, who spoke this language called “techie”. In three days, the business manager needing his widget, went to the IT manager and asked “Hey, where is my widget?” The IT manager replied, “I will find out for you”. He went to the developer and asked ‘Where is the widget?”, and the developer handed him a midget. The IT manager said “I am not sure this is what he wanted”. The IT manager returned to the business manager with the midget. The business manager said “That is not what I asked for, can’t you understand plain ‘biz talk’?” He further inquired, “Why couldn’t you tell me when it would be done and stop the developer when he started building the wrong thing?” The IT manager said “I need help!” and chaos ensued.
Then The Project Manager (PM) stood up and said I can help. I can put together a project schedule and draw pretty pictures for you that will tell you exactly when that IT business solution will be done. The IT manager said “I like pretty pictures, yes do that”. So the business manager made a request to the IT manager for a fidget. The IT manager handed down the request to the PM. The PM made a project schedule, carefully drafted a project scope, wrote a communication plan and a risk mitigation plan and made deadlines and milestones. He then showed all his work to the IT manager who looked at it in awe. Then the PM handed all his work to the developer who stripped out just the parts he needed to create the widget. In seven days, the business manager needing his fidget, went to the IT manager and asked “Hey, where is my fidget?” The IT manager showed the business manager all that the PM created and the business manager looked at it in confusion. The IT manager said, this says your fidget will be done in two days. The business manager said, at least now you can tell me when it will be done, but what is taking so long? So now they have structure to the chaos. In two days the IT manager delivered the widget to the business manager and the business manager said “that is not a fidget, what is wrong with you?” The IT manager said I do not understand what you want.
So the Business Analyst (BA) stood up and said I can help. He said your application development team speaks “techie” and the business people talk “biz talk”. I speak both languages and can translate what the business is asking for into “techie” for the development team. The IT manager said “Yes, do that”. So the business manager requested a zidget from the IT manager. The IT manager handed the request down to the BA and the PM. The BA went and talked to the business manager and said “tell me about this zidget you want”. He made long lists of requirements and definitions of what a zidget is. Meanwhile, the PM made his project schedule, full of scope, plans and drawings. The BA went to the PM and handed him all the requirements and said this is what the business means by a zidget. The PM handed all that the BA and the PM had created to the developer who stripped out just the parts he needed to create this zydget. In ten days, the business manager needing his zidget, went to the IT manager and asked “Where is my zidget?” The IT manager showed the business manager all that the PM and BA had created, who looked at it in great confusion, and stated “Is that what I asked for?” The IT manager said “Yes it is, and it will be ready in two days”. The developer showed the finished zydget to the BA, who stated “this is not quite right, make a little change here”. So the developer did as the BA said. In two days the IT manager delivered the zidget to the business manager, who declared “Look you got it right!”
The above story does not really account for the time and effort that Quality Control and Production Change Control put into the process. So it is easy to see why a day has become a week, or longer; and make it appear as if IT has become irresponsive to business requests. However, in most organizations the above is the normal process, we call project life cycle (PLC), to get an enterprise application development change made. Most organizations have emergency procedures that circumvent the normal procedures to get a change made quickly. More and more I see those emergency procedures being used. What does this cause, new production change control processes and validation, which usually translates into more people. So what can be done to improve this process? Go back to Chaos?
Phone from England
I wrote in my last post about looking forward to using my phone in England. Well, I am back (It was wonderful) to tell all of my application development people and friends about my experience. It was a bit of a struggle to get my phone unlocked. I had just unlocked my G1, and when I purchased my new phone, my provider said that they only allow a phone number to be unlocked once every 90 days no exceptions. I understand that, as unlocked phones are very desirable on the open market, but I want to use my phone. After not taking "no" for an answer several times, a workaround was found. Once landing in England, finding a phone provider was easy. Unlike the US, you have to purchase your phone at full price, and then select a provider. Sure, you don’t get a cheap new phone, but you aren’t saddled with a poorly operating service provider either. My first stop was at an O2 store by my Tube (London underground) station. They were very helpful, even though they couldn’t provide me with a plan. They suggested I go to T-Mobile, and even gave me directions! I would like to know from my application development friends if they ever had helpful service from their phone provider. I went to T-Mobile, and got my SIM card. This is a pay as you go card. I got the card and put 5 pounds for use. Since my phone is not available in the UK yet, I got to show it off. I also got the free international rate of 5 pence (about 8 cents) a minute to the US. My roaming charges would have cost me $1.49 a minute. The data plan was 1 pound a day for unlimited surfing at about 10 MPS. That was much better than $15 per Megabyte usage. How difficult was it to switch networks? I just swapped out SIM cards and it was ready to go. I was able to use Google maps (with turn by turn walking directions), get tube updates, and find places on the Internet. It was the fastest my phone had ever worked. I had used up my initial 5 pounds, so I went to Tesco (like CVS or Walgreens) and added another 5 pounds there. Super easy! Now, if I go back, I have everything I need to use my phone. On my return trip I swapped my SIM card back to my original, and everything worked from home again. I wished the US had this as the competition was on consumer services, and better features and not trying to make it difficult to use your phone or change services.
Getting Some REST
After playing with JPA, I realized that I really don't want to directly hit the database from the client, because that would mean opening up the database port to potential attackers. JPA is really great, but either you hit the database locally, you hit the database directly from a remote location, or you access the database through a connection pool. JNDI is the best way to access a server resource, but it needs to be in a server container. I could not find a way to call JPA using a JNDI context from the client. All database servers have some mechanism to accept multiple connections. But besides the obvious security issue, I already have an application server and connection pool. I should let the connection pool do the work, and figure out plan B.
I reviewed all of my options. I am lucky because I can use the latest and greatest since this is all new. I am using Java 1.6, so I can use EE5 or EE6. Most application development people know that EJB has had a history of being complex, and at times, unwieldy. I could call JPA via servlet, but I was concerned about performance. I decided to use RESTful web services to push data to my JavaFX application. Using REST in JavaFX is quite easy, because the 1.2 specification has a HTTP request object. That means I can write all of my access and utility objects in JavaFX, instead of accessing a class library externally. The big drawback I have thus far is that all of the related objects are another link, and another call to a REST resource. For example, if you look up a specific Customer Record using REST, you will get the details in XML or JSON. To get the collection of Orders related to the Customer, the XML returns a link. You must make another call to get another XML/JSON to parse the related information. The parsing process would not be to big of a deal, except that everything is done asynchronously. I have a Table A object where one of the fields would be a collection of Table B objects. The Table B object contains a collection of Table C objects. In JPA, all of the related collection objects are there and ready for me. Since REST is asynchronous, It makes it very difficult to set up a Table A row object, because Table B is a separate call which will start and finish without Table A's call knowing anything about it. For my database application development people, the key is to de-normalize your relationships. Since this is a big departure to my original schema, I decided to create a whole new database in case I wanted to go back to JPA. After some trial and error, I have a way to asynchronously access and display REST resources in a JavaFX application. I now have to work on writing that data.
The Death of Zembly
Recently, I have been talking about the virtues of Zembly to allow application development people to deploy their Java, JavaFX, and PHP applications to social networking sites like Facebook. Well, the Zembly team has notified everyone that the service will be shut down at the end of the month. I am guessing that this is the first round of “baggage” to be cut from the Sun/Oracle merger. On the surface it makes sense, since it is not a widely known framework, and canning the people will save them money. As a Java developer, I find the situation to be very difficult. Facebook is primarily a PHP site, with lots of Flash added in, and any avenue to move other frameworks to fight Flash is a good one. Can I still perform Facebook application development? Yes, but it is poorly documented, and the documentation on Facebook is PHP biased. It was nice to use a framework to do the heavy lifting because I don't have to worry about the plumbing, just the creative aspects. This is not important when writing an accounting application, but is very important in game application development.
Goodbye Zembly, we hardly knew ye.
Is IT Qualified To Satisfy The Business?
“IT executives increasingly implement marketing initiatives to improve the communications with their business customers. But these efforts often focus solely on the brand aspects of the services under the IT’s control without understanding the business’ perception of IT. To maximize the success, IT must add business satisfaction assessments to its tool kit. Understanding business satisfaction requires qualitative and quantitative data that capture customer expectations and perceptions through different types of interactions such as interviews, panels, focus groups, complaint systems, and surveys. This report provides best-practice recommendations, survey templates, and questions to guide IT executives through the deployment of a business satisfaction assessment. It applies Forrester’s deep expertise in external customer satisfaction to the interface between business customers and their internal IT suppliers.” says a new Forrester report.
I have served on countless business application development teams within several organizations in the Southwest Ohio and Cincinnati Information Technology community, one thing I can say is that most IT organizations do not gauge business satisfaction with IT business solutions. I have served in only a couple of organizations where the business serves on the IT governance committee. An organization does not have to be “big” to have an IT governance committee. No matter what the size of the organization decisions are made as to priorities in IT work. IT governance does not have to be a long drawn out process or take great time commitment from the business or IT executives, but business involvement in IT governance goes a long way in gaining business buy-in as you roll out the IT business solutions to the business.
Involvement in IT governance is just one way that many organizations in the Greater Cincinnati area can improve the IT-business relationship. The Forrester report goes into ways to solicit and gauge business satisfaction with IT business solutions. Doing so should affect decisions concerning not only IT business solution delivery but also IT Infrastructure and IT outsourcing initiatives.
Too Little, Too Late.
I am part of the LinkedIn community and a member of several groups in LinkedIn. One of the groups I am a member of is the IBM i Professionals group. I get a weekly summary of activity and sometimes there are comments on the posts that people have made. Usually there are no more than 3-5 comments. What caught my attention is a LinkedIn post that had 23 comments. The original post referenced this blog post: http://blog.angustheitchap.com/?p=159 In this post, the author talks about the iSeries application development community needing to pull together to DO something about the lack of support for the platform. He asks the question: What have YOU done for the IBM i platform this week?
As a former iSeries application developer, I thought it was a good question, perhaps about 10 years too late, but a good question none the less. Let me state for the record that the iSeries is a great platform and it is without a doubt the best box for business that IBM has.
The problem is that it is a victim of its own success. There is no other platform where an application written in the 1980’s could still run un-touched even though the underlying hardware has changed numerous times. To me the core issue is this: IBM is no longer in the hardware business; meaning they don’t derive that much revenue from hardware anymore. The majority of IBM’s revenue comes from services. The iSeries does not need or generate the services revenue that other platforms do. So in my opinion, it’s an economic issue and no amount of doing or community is going to change that.
IBM, Java, and the Community
I recently read an article about the state of the IBM “i” and the amount of complaining by IBM application development and business partner folk. I know several RPG application development folk, and it sounds familiar. That made me think about my Java Application development and career. Are there things to complain about, and uncertainty about the future? Yes, but there are 2 reasons why the Java community is in a better place; the business model and the community. Before the IBMers call for a holy war, I said COMMUNITY! I am not talking about the strengths or weaknesses of the hardware or software. The business model for IBM is that they make the hardware and software, and partner for the sales and service. I think that is a viable model until IBM competes in the sales and services with their partners. If a lead is brought in by a small partner, they are awarded by giving the business to someone bigger. This sets up a confrontational relationship between IBM, the big partners, and the little partners. IBM can also decide whether or not you are worthy to be a partner. Why does this affect the software application development team? Because most consulting firm are selling SERVICES not HARDWARE. If they are not seeing business because of political fighting, they don't have to sell it. There are viable options on other platforms, where interference does not happen. IBM never fostered a community, they created a hierarchy with themselves as the head.
Certainly Sun has done some things that made myself and others unhappy. Besides, complaining, we actively pushed to remove barriers in our path. We do have an open source Java. Is there a IBM community that can work with RPG to make it work for them? I also think its about scale and timing. It's not like IBM software developers have their own AS/400 at their home. It's easy for me to create and use nearly any kind of application at my home in Cincinnati, and pretty cheaply. It makes it fun to tell non-technical people about my application development. Nobody but accountants want to hear about accounting programs. Java, and newer languages have grown up with the Internet. I have friends from all over the globe that have similar interests. If I have a problem, I can go online to a forum, friend, or web page to find what I need. I can read and write blogs to voice my opinion (like now). These things are not ingrained in the Legacy community, and in fact, have been actively campaigned against. It is my belief that any software, hardware, or service will die when there is no vocal community to support it.
Using Zembly
NetBeans, Zembly, and Facebook
Are IT Jobs on the Rebound?
Adding to the good news for IT Services Companies in Cincinnati, across Ohio and the country; as well as application development personnel is news from the U.S. Citizenship and Immigration Services that demand for H-1B Visas are on the decline. They expect the entire 85,000 visas to be given out this year, just not as quickly and with the same frenzy as in the past few years. FierceCIO continues to state that ‘employers are putting a greater emphasis on hiring American workers, buying American goods and abandoning offshore outsourcing’. Where I do not believe this to be the general direction of employers in America, some smaller employers may have taken this direction but large firms continue their offshore IT outsourcing plans.
So does all this mean that better times are in store for IT business solutions professionals in America? I remain pessimistically optimistic.
Open Up and Say... Ahh!
For several years now STAR BASE, Inc. has been delivering open source IT Services in Cincinnati and Dayton. I don’t know, but maybe we are IT consulting trend setters for Cincinnati. Seems I have seen quite a bit in the last week about open source.
This is not the first time I have written about open source. In a previous post, I talked about Magento e-commerce. I just saw this article about Magento. As my fellow STAR BASE, Inc. IT strategy consultant, Matt Warman says, "come on in, we’re open."
Open source can substantially lower your cost of application development services. You know what? “It don’t get better than this”.
Balance vs Blend
I’ve heard a lot of talk recently about finding some balance. Lets face it, whether you are an application developer in Cincinnati or Dayton or outside of the IT services field, its tough to balance out all of the demands of life.
I think of someone balancing on a tight rope or a balance beam. Its hard to do for long periods of time for most of us.
I think its easier to blend rather than balance. What do I mean by that? For me, its doing a little bit of a lot of different things. For example, I’m not getting out on my motorcycle as much as I would like. I did get a chance to ride into the office over the week end. Its not my ideal ride, but at least I got on the “horse” this week.
Can You Hear Me Now? Part Two
Business application development needs to accelerate faster. Some are still talking about getting IT solutions to the web. We should be talking about how to get IT business applications WAP enabled. As voice and data networks continue to converge, consumers are going to want new and different way to access IT solutions. Some have struggled with web application development and WAP is going to be a little trickier because the user interface is small and will probably need to be re-worked for the smaller display.
In part-one I shared that on this trip, the coverage on my new phone was very acceptable. In this post I will share some of the features I have used. One of my requirements was to have a handset that supported navigation. On the old phone I used Navigator that has a female voice, so I named her Suzy. My new phone has Nokia maps and has a male voice, so I will call him Coleman. Suzy has helped me many times and I have confidence in her, so it was up to Coleman to prove himself. While we were still in the mountains of Maryland, I programmed the final destination into both phones. It took a few minutes for the Nokia to find our location, but once it did, Coleman gave me turn by turn instructions, ETA and other things I expected. Even though I had cell coverage, Suzy was not able to connect at all until we were out of the mountains. I have had this problem before with Suzy before and it’s really quite annoying when you really need directions. The conference is at National Harbor which is been open less than a year. As we got close, I could see the Gaylord resort, but Coleman kept insisting we make a legal U turn. Nokia downloads map data to the phone and navigator send information through a data network. If there is no data network, no maps. The downside of the Nokia is it takes up phone memory. Right now I’m call this even. There are pros and cons to both.
My new phone is a smart phone, so there are two other options that I am aware of. Telenav is subscription service that is very similar to Navigator. I can also download a Google maps application as well.
Another requirement that I have is my contacts and calendar be synced to our server. The Nokia software does a great job at this. Another option that I need is to be able to tether the phone to my notebook for broadband internet connectivity. I have not been able to test this on my new phone yet.
One of the goals of the switch was to save some money. Because our new phones are smart phones, they need full data service and so I’m ending up at about the same cost. So the bottom line is we ended up with more capabilities for the same price. From what I see so far, integrating voice and data applications and having them work well together will be the next application development challenge.
Oracle and Java
The news this week is Oracle buying Sun. As a Java application development guy, this is very important news. I recently wrote about my feelings for an IBM merger, so this pairing is interesting. Larry Ellison had big praise for Solaris and Java, but nothing on MySQL. This is my take on the big points and questions I have.
Solaris
It is apparent that Oracle wants an OS to be a full service enterprise application development provider. They want to compete against Microsoft and IBM. I don’t see Oracle doing anything to hurt Solaris. I think Oracle can do a better job than Sun in this regard, as long as they use Sun’s customer service model.
Java
Oracle is a big Java user. The question for me is will Oracle "IBMify" Java? Creating proprietary hooks where none is needed to make a profit is dead wrong. Java is the dominate language, but other languages were dominate in the past. If Oracle can resist the temptation and just be the caretaker, java application development will be dominant for some time. If not, Java is open source, which means a "free" Java will be around, but multiple, incompatible versions of Java will kill it. I see Scala as a viable successor to Java, so I think the fragmentation issue will disrupt application development, but not move everything to .Net.
NetBeans
The fate of my favorite IDE is in much better hands with Oracle than IBM. NetBeans is a big part of Sun’s offerings, so I don’t think there is an issue.
MySQL
Many people lament that Oracle has MySQL finally. There is some well founded concern, but I see Oracle using MySQL as an entry into smaller markets. If you can brand MYSQL as Oracle’s "lite" database, then small businesses can use MySQL, and then seamlessly move to Oracle when the business grows.
Questions
What about JavaFX? This is the first step to the great convergence of write one set of code to run on mobile desktop and web. How much autonomy will Sun staff have? What about Glassfish? Only time will tell.
IBM Buying Sun? Say It Isn’t So!
As an enterprise application development team member, I have had a long history with both companies. I started in this business with IBM’s CICS and COBOL. Publishing one update every 10 years or so, COBOL could not compete with the newer languages of the time (Java). IBM only started looking at viable additions or enhancements after losing lots of business. Having seen what IBM did with their languages, the outlook is not so rosy with Java. I also came from a vendor (Silverstream), which took Java and created proprietary extensions. When Silverstream got bought out by Novell and disappeared, my focus was to convince employers that I did in fact know Java. Since then, I have had a personal dislike for non-standard "enhancements" to technology. IBM’s WebSphere falls directly into that category. Taking a perfectly usable Apache web container and adding "enhancements" so it doesn’t follow apache documentation, but needs IBM support makes me angry. Their JDK implementation leaves many things to be desired. IBM has a history of taking open source technologies and contorting them so only IBM trained personnel can use them. To most application development team guys, IBM is a huge thorn in their sides. It is management not IT that purchases big blue.
It’s not just Java, but many of my other favorite technologies that IBM may toss. Glassfish is a free, easy to use application server that uses the latest EE5 code base. WebSphere 7.0 has been recently released to use IBM’s EE5 edition. 2 years after Glassfish! I am a long time MySQL user, I don’t ever want to use DB2. I can’t imagine using DB2 for my passion projects. NetBeans has made great strides in the IDE space, and is becoming the choice of many application development team members. Whether you use all IBM or all Sun is moot; we have choice and competition, but not for long.
IBM’s lack of focus on marketing and developer mind share (anyone remember OS/2?) are important reasons why I hope this doesn’t happen. In a perfect world, Google would swoop in and buy them. Their cultures are very similar (many former Sun people work at Google), and the competition would still be there.
Yes, many of these technologies are open source. They will not just disapear; but without corporate backing, they will not see light of day in the corporate space. The reason Red Hat and SUSE are major Linux distributions is that Enterprises can have Service contracts. If IBM chooses to abandon them, I don't see widespread use, unless the technology is overwhelmingly compelling.
Think Change
Organizations that build strong value-driven cultures frequently achieve high performance. The values that are developed must touch every department in the organization or the overall operation will fall short of its targeted goals.
As an IT consulting firm in Cincinnati, we see many different approaches from many different companies and it is the “out-of-the-box thinkers that seem to continually apply lateral thought process on a continual basis and always stay a few steps ahead of their competition.
One would think that IT departments would observe and learn from this but way too often they do not pay attention to the business drivers of the organization and continue to stay with the same IT infrastructure year in and year out and resist change on any level.
There are those that would argue that “if it isn’t broke don’t fix it” and I agree to a point but I believe that if IT professionals are going to contribute to building a strong value-driven culture that works to achieve the business goals of the organization they are going to have to look at new approaches that may enhance the very work they are held accountable for.
Being responsible for business development for our Cincinnati IT consulting firm, over the past couple of weeks I have approached several clients and potential clients with some new value propositions. Many do not want to talk about them, nor are some even curious on what they are. Everyone has a full plate and little capacity for a new application development services, IT training or IT consulting project.
However, here is a question that I have for these individuals. If it is true that information technology changes every fifteen to eighteen months, how can the IT systems and enterprise IT applications that you have had in place for the last three to five years continue to be relevant or simply as efficient as they could be? Do you not owe it to yourself to at least listen to what an IT consulting firm here in Cincinnati has to offer? Perhaps that IT consultant has significant experience with a solution that can make a difference but you are unaware of it because you are resistant to change and everything is running 'smoothly'. I can understand your hesitation but what if the new solution could greatly improve your IT infrastructure, decrease costs, fuel improved productivity or more effectively balance your IT staffing needs? Wouldn’t it behoove you to at least listen?
The IT Value Proposition Amid Turmoil
In weak economic conditions, your company’s decision makers need the ability to understand how the company is performing against its targets. They simply do not have the time to sift through stacks of reports to find out what’s right – or wrong. By linking applications, processes and information technology support together any organization will be able to measure exactly how they are performing against their targets.
The management team of any organization uses dashboards, gauges, charts and other graphical elements to translate complex information into a dynamic view of business conditions. Is it possible to take this same approach when it comes to mapping IT’s relevance to the business targets of the organization? The short answer is absolutely, but one must start with a plan and that plan should begin with an IT Wellness Check™.
In the IT consulting industry we find too many organizations that try to piecemeal their information technology systems together. The problem with this is the mere fact that everyone everywhere is dependent on technology, and in this environment, every CIO and IT manager must know that their IT departments are in line with the business goals of the organization. In these times of economic downturn downturn IT departments are one of the first departments to be cut. In many cases, this results in the slowdown of production and contributes to missing the business targets of the organization.
An IT Wellness Check™ protects against economic challenges by shoring up internal operations to ensure the entire organization is running at peak efficiency. IT is a vital part of any organization's internal operations, and a proper IT strategy is critical for IT departments to gain insight and to connect operational details to business drivers. The IT Wellness Check™ is your business plan to make sure there are no inefficiencies, that you are operationally sound and that there is less chance that your budgets and your department will get cut. That application development services project that you are trying to get approved will have a better chance of acceptance if you can show exactly how it relates to the business goals of the organization.
Remember, non-technical people often do not realize the consequences of the actions they take when they cut budgets and staff. It is our job as responsible information technology professionals to make sure we are always operating at peak efficiency and paint the picture for upper management that shows why specific people, applications or IT infrastructure are necessary to assist them in meeting the business targets of the organization.
My Own G1!
After writing about the G1 phone and G1 apps, I have purchased a G1. 2 years ago I switched from a "brick" phone which handled calls, to a picture phone. Moving from my previous phone to the G1 feels like the same leap in technology. My old phone played some songs, but was difficult to connect to the PC. It had limited disk space, so I had to email my pictures to get them off my phone. I was always deleted text messages to clear out space. I am not a great with text messaging because I am not comfortable with using the phones keypad to text.
The G1 is truly incredible, but first, the issues. You HAVE to get a data plan for the phone to work. For me, it’s $25 a month. Your app on the phone is an analog clock. The digital time is in the upper right hand corner, but this analog clock is on the desktop. No, you can not change it to digital. You can remove it, but there isn’t a replacement. Those are my issues currently.
The G1 uses Google’s android platform, which a custom java stack running on Linux. You have access to all of the services on the phone, so you can write a great variety of applications. In fact, you will find many of the same applications on both the iPhone and the G1. For the application development guys, you can write your masterpieces on either Eclipse or NetBeans. I am using a NetBeans plugin to run a G1 emulator, and I have written the "Hello Android" application already. I will have more application development details in a future post. You don’t need to connect to a PC to download applications; you just go to the marketplace to select what you want. All applications are currently free, but that will change as the complexity of the application development increases. Just select and download and you’re ready to go. For me, I always wanted to create my own ringtone, and now I can. You can move your music to the G1 via using the USB connector, and select your song to be the ringtone, or download a ringtone maker. The ringtone maker allows you to select any part of the song to be your ringtone. I have a Stone Bunnies song as my ringtone! I have had great battery life, as I was watching YouTube videos for 2 hours while on a trip over the weekend, and I still had 30% left. There will be more a figure it out.