Thursday, April 27, 2006
Wednesday, April 26, 2006
"DevCo's" venerable General Manager, Nigel Brown got a moment with Gavin Clarke of The Register, which resulted in this article. A key statement that I know many of the loyal Delphi/BDS community will like is; "We won't be speaking to CTOs except in rare instances," Brown said. What he's saying is that "DevCo" will be about developers, for developers, and by developers. Most of the marketing will likely be squarely focused on the developers. Not some high-level CTO/CIO/VP mish-mash of confusing MBA buzzwords.
Will this mean that we'll abandon things like ALM integrations? No! Does interfacing to various SCM tools in the IDE make the developer more productive? Sure. What about integrating tools that help a team of developers use the various agile development methodologies such as SCRUM, Pair Programming, XP, etc..? These are tools that the developers would use day-in and day-out. If it's going to keep developers and team of developers productive, then it's in the cards. It's also about emerging and current technologies. These are the things developers care about. As you can read, Nigel and the whole "DevCo" leadership team is committed to ensuring that the products get the proper investment of resources, and have an effective, key point here, well funded sales and marketing teams.
Tools such as project portfolio management, requirements management and elicitation, testing tools, are the pervue of what the new Borland will emerge as. These are the tools you can sell to a CTO/CIO/VP. They are about increasing visibility of the development process up the management chain. If the developer's tools make the teams and the developers more productive, then Borland's tools can make sure the rest of the organization will see that. There still needs to be tools that make the developer successful. That's our job.
Minor nit... Nigel is a 10 year veteran of Borland.
Sunday, April 23, 2006
Just an FYI for all the readers in the EMEA and APAC regions (that's Europe, Middle East and Africa and Asia Pacific). Long time BDS/JBuilder/InterBase supporters Malcolm Groves (APAC) and Jason Vokes (EMEA) have now been confirmed as being firmly in the "DevCo" camp! As we move forward in creating this new venture, there will be more information about the folks comming online in this new venture. So, welcome to the "DevCo" team, Malcolm and Jason! As another bit of status, Steve Shaughnessy will be starting sometime next week.
Tuesday, April 18, 2006
Now available for all registered users of BDS 2006. This is a patch that will install on either the initial released version or the C++Builder update version. Come and get it.
Monday, April 17, 2006
As you can see from the title of this post, I'm going to talk about interns. Part of the overall plan of "DevCo" going forward is to create a new environment and culture. This includes providing a formal mechanism to bring in new, fresh talent to the team. One of the most effective ways to do this is through an internship program. This allows university students to obtain key skills and experience in an actual work environment. It is also a way for the company to evaluate the performance of the interns and based on how well they do, the company can optionally offer them a full-time position. This is typically after they've graduated.
Interns can bring in fresh ideas and perspectives so there are things the company (empoyees) can learn from them. Likewise, the intern can learn from the more experienced and "battle hardened" engineering teams. In fact, it is an extremely honorable thing to impart your experience and knowledge to the next wave of fresh talent. Part of the goal of a formal internship program is to make sure the intern is matched up with the proper senior engineer. They would form a, kind of, mentor/apprentice relationship. As I begin to formalize the details on program, I'll try and post more details. The good news is that we've gotten approvals from the "DevCo" board to open up a decent number of part-time internship requisitions. Most of these will be filled from local universities and colleges. I'll try and post the job descriptions and requirements as they become available.
Tuesday, April 11, 2006
Even though there's not much to talk about on the business side of the spin-out plans, there's stuff to talk about on the “DevCo” product/team front.
For the Delphi/C++Builder/JBuilder faithful out there, I'd like to announce some very exciting news. In this post, I'd mentioned that we just had a new compiler engineer join the team. This person is working out very well. What is also really exciting is that yesterday, a former Borland employee just accepted a position on the team as the new database/connectivity technology architect. Some of you may have heard of this person since he was the main driving force behind the stand-alone, SQL-92 compliant, fully managed code, JDataStore (and the tech preview NDataStore for .NET).
Steve Shaughnessy comes on board with a significant pedigree of having worked on many successful products. Steve joined Borland in 1988 and worked on the Paradox DOS team. Later, Steve moved to a research project called ICE along with several other Paradox team members. In the mid 90s, there was a new startup project called Latte whose goal was to create an IDE and framework around the coming Java wave. During Steve's involvement with what was to become JBuilder (which, BTW, the JBuilder 1-3 IDE was based on the Delphi IDE), he and another engineer created this interesting little stand-alone SQL-92 compliant embedded Java database called JDataStore. As the success of JBuilder and JDataStore grew, JDataStore was spun out of the JBuilder group into the database group alongside InterBase. While in this group, .NET was becoming a force in the market, so Steve and his colleague were able to move the JDataStore technology into .NET (The details by which they did this is the subject of another blog post and one I'll encourage Steve himself to expand upon). This NDataStore (for lack of a better name) technology was demonstrated at the 2004 BorCon in San Jose. In mid 2005, Steve decided to leave Borland after nearly 17 years. After the announcement that Borland was going to spin-off the IDE and database groups into a separate company, we started talking with several former Borland employees that had left to pursue other opportunities. Steve Shaughnessy quickly made it onto our “short list.” Steve is held in high regard among the members of the Delphi/C++Builder, JBuilder, and InterBase teams. Universally, when we mention Steve to folks who have had a chance to work or interact with him they have nothing but good things to say. When I announced this to the team earlier today, a spontaneous applause errupted in the room!
So, Steve, welcome to the team! In some ways this is starting to be the “DevCo” equivalent of “Hey! We're getting the band back together!” Once I get his permission, I'd also like to introduce our new compiler engineer.
Monday, April 10, 2006
There wasn't an update last week on the DevCo spin out progress mainly because there wasn't much to report. Most of the activity has been shifted from working on all the business plans, business models, and related items to now taking that information and creating a management presentation. This presentation is expected to be given to the relatively few “finalists” selected from the bidding process. We're now in a “quiet period.”
Monday, April 3, 2006
Changes, my friends, are afoot. While waiting for the Delphi/.NET compiler (dccil) to embrace all the latest goodies in the CLR world (partial types, generics, nullable types, anonymous methods, etc...) other engineers have been working on a lot of things that are independent of all the new compiler goodness. The biggest change that is going to happen to VCL/.NET is the change from using Integer for handles (ie. THandle = Integer;), it must now be changes to IntPtr. One common misconception (and one I admit to having fallen prey to as well) is that somehow IntPtr is some kind of “Pointer” type represented as an Integer. Well, call me foolish and gullible, but I'm going to go out on a limb here and say that “IntPtr” is not what I'd call a very good name. OK, OK... it basically sucks as a name. I can see why at first glance one would be led to the misconception that “IntPtr” is a “Pointer.” So what is this odd bit of identifier madness? In actual fact (and to the more intelligent and astute among you, this is all mindless drivel), it really means this “Integer whose physical size and precision matches the physical size of a Pointer on the currently running underlying platform for which the “Just-In-Time” compiler is actually generating code” (pay no attention to the nested quotes in that statement).
What does this mean? Well... if we've done our job correctly, this should end up being a complete non-sequitor. However, as I dust off my trusty crystal ball (which can only look into the past, BTW), I would say that in reality, some of you will be affected. Most noteably, those among you, that find yourself snuggling up a little closer to the Windows API. This would, generally, be those of you who tend to dabble in the white arts that many call “component development.” With a few exceptions, as I've outlined, most of the magic will be handled by the judicious and careful implementation of that wonderful bit of class and scope enhancing compiler construct called Helper Classes. By creating a rich helper for IntPtr that includes overloaded operators, explicit and implicit conversion operators, and other bits of fun, we can now...hopefully...keep the vast majority of existing code out there compiling and correctly functional. We've already got most of this work done, and now the task at hand is to scour the VCL sources for the rare cases where we have some unintended implicit conversions taking place. Seppy and I talked about this just this morning and he's working through some interesting cases where the implicit conversions are getting into an infinite loop. Should be simple to fix.
The biggest thing that may affect folks is if they've declared their own DLL imports and are using Integer for handles. So start using THandle and things should go much smoother (at least until I can get even more information about our own progress). Other cases are in the Message crackers where the LPARAM is now an IntPtr since that param will now grow to be an Int64 on 64bit platforms. Much of this work was scoped for the DeXter release (BDS2006), however since Microsoft never released a version of .NET 1.1 that works in 64bit platforms it seemed to be busy work for little benefit. We decided to concentrate on more immediately beneficial things... like fixing bugs. Now that we've turned our resources to bear on the .NET 2.0 platform, we've been dusting off some of this preliminary work (we did get some critial issues fixed in the compiler for DeXter that helps in this effort) and are now in full swing.
On a final note, let's all take a moment of silence for the loss of all that wonderful work late last Saturday. The good thing is that we've been able to stop David I's machine from calling NORAD. All the black helicopters have left along with all those men in black suits.
Saturday, April 1, 2006
It's been a really tough week. We're still having meetings about the financial models and the details therein. Here's a quick recap of this week's business;
- Monday: We got word this morning that Borland was going to retain all rights to “TObject!” This was a major blow to the process.
- Tuesday: This meeting centered around determining the incremental costs of each reference to “TObject” in the Delphi sources. Man... that was brutal!
- Wednesday: Once we came to agreement on Tuesday about TObject, our focus moved on to IInterface. The tricky issue here was having to split out the sources between Win32 and .NET. We also then realized that our estimates for Tuesday were off because of the same issue. TObject = System.Object in .NET so we can't count that! I mean we'd be licensing a bunch of stuff we already license from Microsoft! Back to the drawing board...
- Thursday: Board meeting. The board hammered the leadership team on why we haven't determined what brand of soft-drinks with which to fill the vending machines when the deal closes. We had to stand our ground on this one which caused a few moments of tension. We had to explain that we're still doing taste tests among all members of the teams. There's been a few vacations we're having to work around. After that we went into the issue surrounding “TObject.“ We tried to explain that we didn't understand what value that had to the Borland business going forward. Finally, Tod Nielsen slammed his elbow on the table and exclaimed, “Arm wrestle you for it!“
- Friday: Good news! After claiming victory on Thursday for obtaining the rights to “TObject,“ we were able to hold our regular Friday all-hands status meeting with all the Scotts Valley “DevCo“ employees and announce that we now have “TObject!“ The room errupted in cheers! There were even a few tears shed. Earlier in the day several members of the leadership team met with “financial broker who shall not be named that was already named“ to begin scoping the costs around the trademarks “Webvolutionaries“ and “Living La Vida Linux.“
Overall I think this week ended on a high note. There certainly were some tense and grueling moments. Coming up, Nigel is going to be in Scotts Valley next week were we can really begin to plan and scope the upcoming Don Johnson Look-Alike Contest slated for the end of April.