text:
Now here is a true Blast from the Past from March 8, 2006 during the early days of "DevCo". This one ought to provoke some discussion. What of this list has actually come to pass?
Now here is a true Blast from the Past from March 8, 2006 during the early days of "DevCo". This one ought to provoke some discussion. What of this list has actually come to pass?
Joe Mele tossed his name out there as the potential CEO of DevCo. Well, I'll throw my hat in the ring as well. And not only that, I'm here and now putting out my official plan of action for my reign as the leader of the premier development tools company.
My plan is divided into three different courses of action: What I'd do immediately, what I'd look into doing, and wild-ass ideas.
Here's what I'd do for sure right away, no questions asked:
These are the things I'd look in to doing. I wouldn't necessary do them, but I'd throw them out there and look seriously at them:
Here are a few ideas that are really out there, but worth at least thinking about:
Just a few thoughts for the new CEO, whoever it ends up being.
I don't know what I ate on April 1, 2006, but apparently it didn't sit well.
Another classic for the Blast from the Past file, this time from CodeFez on November 27, 2004. Eight years is a long time for Delphi to be dying.
Another classic for the Blast from the Past file, this time from CodeFez on November 27, 2004. Eight years is a long time for Delphi to be dying.
People are always asking "Why would I use Delphi when I can use C#? Why would I go with Borland's tool when Visual Studio and clearly closed the gap?" I think that is totally the wrong question to ask. The real question is "Why should I be using C# when I could be using Delphi?". Here's some of the reasons why the latter is the real question to be asking:
Delphi is easier to read. Delphi thankfully isn't a C-language descendant and so it doesn't use the ugly, horrible to read C-like syntax of say C# or Java. It uses easy to read works like 'begin' and 'end' instead of hard to read symbols like '{' and '}'. It uses a readable, sensible syntax in 'for' loops. It requires that you declare variables before you use them, ensuring that the definition and type of variables are easy to determine. It forces you to declare classes and routines in the interface section of a unit, making for much easier analysis of already written code.
You already know Delphi – if you are currently a Delphi developer, Delphi has you covered in .Net. There isn't a single thing that can be done by other tools in .Net that you can't do in Delphi.
Delphi has better data access. The BDP – Borland Data Provider -- provides a much cleaner and well designed interface to ADO.NET than the FCL does. The FCL doesn't provide enough abstraction over ADO.NET to even provide a single set of components to access data with ADO.NET. Access to Oracle and SQL Server require completely different sets of components and types, making providing a single-source, common front end to data impossible. The BDP, on the other hand provides that single interface, even provides components that allow you to mix data from differing databases into a single dataset. Other languages and tools don't even pretend to provide this advantage.
Delphi is cross-platform. Delphi code can be cross-platform between .Net and Win32. Code bases can, with a bit of work, even be used in those two platforms plusLinux. Delphi is the only .Net language that provides that level of compatibility between Win32 and .Net.
Delphi can expose .Net functionality without COM/Interop – this is an unsung feature of Delphi. Want your Win32 applications to have access to encryption? Regular expressions? Anything else in the FCL? Delphi can provide it without COM.
Delphi can link .Net code into your EXE – Delphi provides the ability to link code into a single EXE instead of having to worry about deploying all the right assemblies in all the right places.
Delphi handles and names events the right way. Is there anything more confusing in the .Net framework that delegates and how they are used to handle events? No, there isn't. Delphi handles this all the right way, hiding the silly, confusing way .Net does it. Instead of the confusing C# syntax, Delphi uses the model that has been proven for over ten years. Need to add an event to a component? Delphi does it clearly and simply – like it does everything.
Delphi does IDisposable correctly. -- Only slightly less confusing than delegates is the concept of IDisposable. Do I call Dispose? Do I need to? How do I know? As long as you follow the time-test method of calling Free on any object you create that doesn't have an owner, you'll be fine in .Net. If Dispose needs to be called, Delphi will call it. If not, it won't. No more guesswork, and your code will even be compatible on the Win32 side of things.
Delphi has been doing "Avalon" for ten years. The hot new thing over at MS is "Avalon". Avalon is a system for storing properties and information about forms and objects in a text file separate from the silly InitializeComponents call in your code. Sound familiar? Yeah, thought so. (Side note: Partial classes crack me up. Only Microsoft could invent a "feature" solely for the purpose of making up for a gross shortcoming in their language.)
Delphi has datamodules. Is there a bigger oversight in all of the FCL than the lack of a datamodule-like class? Sure, you can 'simulate' datamodules, but it's a poor simulation at best. Put your database controls in a datamodule, and add the datamodule's unit to your uses clause and the Object Inspector is smart enough to see the components in the datamodule when looking at another form or whatever. Datamodules let you decouple data access and other abstract concepts from the user interface of your application. In other words, datamodules rock, and other tools and don't have them.
Delphi's third-party market is way more mature than the .Net market in general. Sure, there are tons of components out there in the .Net market. But Delphi component builders have been at this for a decade, and have the years of experience needed to build excellent components the right way. Are you going to try to tell me that Ray Konopka and the DevExpress folks don't have it all over the johnny-come-lately folks that have been building components for a year or two?
ECO II – Delphi has a mature, existing, shipping model driven architecture that is written by people who truly understand object-oriented programming. Microsoft doesn't. They have some thoughts and ideas outlined on a web-site somewhere and promises of functionality that they don't even really understand yet. Delphi is light-years ahead in this area, and there is no reason to believe that they won't stay that way.
Borland's ALM solutions are here now, not "in the vaporware pipeline".Microsoft is touting Team System or whatever they are calling it. Sounds great and all, but of course Borland is selling that technology right now, not just talking about it..
And that is just scratching the surface. You'll probably add even more reasons right here in the comments. Personally, I can't understand why anyone would ever choose C# or VB.NET over Delphi.
How about you?
Yet another Blast from the Past. This one was originally posted on May 2, 2006 and is another one that holds true six and a half years later. It's fun to note that the number of Delphi books out there appears to be increasing as it becomes easier to publish and the bookstore becomes practically the last place you'll go to get a Delphi book.
Yet another Blast from the Past. This one was originally posted on May 2, 2006 and is another one that holds true six and a half years later. It's fun to note that the number of Delphi books out there appears to be increasing as it becomes easier to publish and the bookstore becomes practically the last place you'll go to get a Delphi book.
I'm nearing the end of a pretty big project at a client very near our office. I've been going in ever day full-time for the past few months. I've really enjoyed working there, as the folks are nice, the development process is very professional and quite good, and the camaraderie quite enjoyable.
Now that the project is winding down, I've had a chance to actually do a bit more visiting and kibitzing with the folks there about general topics concerning development (plus various forays into the Civil War, American Idol, etc.) The topic of Delphi books came up, and one of the guys, Randy, made a good point. He noted that the reason that there aren't that many Delphi books out there is that there doesn't need to be that many good Delphi books out there.
The books that are out there are complete, comprehensive, and well done. For instance, there are really two books out there right now for Delphi: Delphi for .NET Developer's Guide by Xavier Pacheco, and Mastering Borland Delphi 2005 by Marco Cantu. Once you've bought one (or both) of these books, you've got pretty much everything you need. Xavier's book covers pretty much everything you need to develop in Delphi for .Net, and Marco's book covers both .Net and Win32 development. If you have Marco's book, for instance, you really don't need any other books.
Another factor in limiting the market for Delphi books is that Delphi is a mature product. It's users are to a large degree familiar with the language and the tool, and thus the demand for books that cover the basics is limited. There just aren't that many folks out there that need to buy a book about Delphi anymore. (Now, we can argue that we all need to figure out a way to increase the number of folks that want to buy books, but that is another blog post.) And since there are so many facets to Delphi, any book on an advanced topic would be of limited interest. And for topics like ASP.NET, there are so many C#/VB.NET based books out there, the content of which is 99.9% useful to a Delphi developer, that there's little reason for a publisher to go to the effort of putting out, say, an "ASP.NET for Delphi Developers" book -- as much as I'd like to see such a thing.
In addition, the presence of resources like http://groups.google.com makes finding answers to questions and problems easy. It's a rare day indeed when I can find an answer to a question using the newsgroup archives. This is an invaluable resource, when you stop to think about it. Shoot, just Peter Below's responses alone are worth their weight in gold. It might very well be that the excellent support received in the newsgroups has limited the market for Delphi books as well.
The bottom line, it seems to me, is that there aren't that many Delphi books out there because we just don't need that many Delphi books.
So what is the future of Delphi books? I think it's with something like lulu.com. Lulu.com couldn't be easier -- you send them a PDF, and then they'll print out a real book whenever someone pays for one. No muss, no fuss. Basically you are 100% in charge of the PDF, and you get 80% of the selling price. Someone like Ray Konopka, who sells his class Delphi Component Development book online as a PDF, would be perfect for something like this. You want to publish your own Delphi book? There you go. The size of the audience matters not. You want to buy a book? Encourage authors to use a service like Lulu.com to publish their materials. Heck, publish one yourself. The overhead costs seem quite small, and overall, it seems pathetically smart and simple.
I suspect that services like lulu.com will florish and only get better and cheaper. The stack of Delphi books at your local Borders (weird -- that link basicall goes to amazon.com...) might not be that tall, but the amount of information available to Delphi developers is still staggering. I've never been a big believer in the "books on the shelf equals market strength" theory -- at least in the sense that I think Delphi's market strength is much, much stronger than one might conclude from a trip to Barnes & Noble. Delphi book publishing need not be dead, it just needs to shift to a new way of doing business.
This one is a Blast from the Past -- I originally wrote and posted it on December 15, 2005 -- but it is as true today as it was then. I even considered palming it off as fresh material.
This one is a Blast from the Past -- I originally wrote and posted it on December 15, 2005 -- but it is as true today as it was then. I even considered palming it off as fresh material.
It's a standard Dilbert joke that managers are idiots. One doesn't have to hang around programmers too long to find out that many of them work for managers that don't have a clue about developing software and thus make many a nutty decision based on profound ignorance. Plenty of Delphi fans have had a boss that follows the "Nobody ever got fired for choosing Microsoft Development tools" rule and choose Visual Basic as a corporate standard. <shudder> And the old adage states that programmers make crappy managers.
So, I guess, based on the above, it's impossible for someone to be a good manager of programmers. If one doesn't know anything about programming and has never been a programmer, then apparently, he will suck as a manager. And if one has been a programmer, and is so good at it that he gets promoted to be a manager, he,too, will suck as a manager. Sounds like a lose/lose situation all around -- programmers doomed to a life of sucky supervisors.
Well, I'm not buying it. Surely somewhere, somebody is managing programmers well. Somebody has to be leading folks to build some of the insanely good software projects that are going on out there. So, what does it take to manage programmers well? Good question. I'd say that such skills and capabilities exist. I'd also say that they are, sadly, in relatively short supply. Too many Dilbert strips end up on too many cubicles in software development shops.
First, to be a good manager of programmers you have to be,well, a good manager. That's easier than people think, really. Here's my basic list of things one can do and not do to be a good manager:
Now, that's all general stuff. It applies to all managers, whether they lead a team of auto workers or a group of Delphi programmers. What does it take to manage programmers well?
Okay, that's a pretty good list. I've been on both sides of the fence, and as a consultant, I see all sorts of management types and methods. I deal with programmers on a daily basis, and I are one myself, so I think I have a pretty good grip on what's going on from a lot of angles. I'm sure you all will come up with more stuff and comment on it. Please do. After all, I'm not an expert on this stuff and I only write this to try to make you look good. ;-)
Yet Another Blast from the Past, this one from November 23, 2003. This one is kind of moot now, as well, eh?
Yet Another Blast from the Past, this one from November 23, 2003. This one is kind of moot now, as well, eh?
As frustrating as it is to us Delphi lovers, Delphi has always been a tough sell in corporate America -- not because Delphi isn't perfectly capable of performing any task that a corporate development team might throw at it, but mainly because many managers and decision makers aren't willing to take the perceived risk of investing in a non-Microsoft development solution. Borland has (rightly perhaps for a while in the past, but certainly not for a few years now) the reputation as being a bit on the edge financially, and so the safe, "nobody ever got fired..." decision has been to buy Microsoft. This will probably continue to be the case for some time, as Microsoft certainly will continue to be the a dominant company in the marketplace for the foreseeable future. However, I think the advent of the .Net Framework as the "platform of the future" and Microsoft's particular strategy for moving people to .Net both provide Borland and Delphi developers with a unique opportunity that actually makes Delphi the only safe development platform for a large number of projects that will be developed over the next few years.
Microsoft clearly wants us all to move to .Net, and frankly, I think we all should be happy to make that move. The .Net platform is really cool and really powerful. It provides a very capable and easily accessed framework (the Framework Class Library, or FCL) that is light-years ahead of the Win32 API. Microsoft actually seems to have finally figured out object-oriented programming. Once the actual framework becomes ubiquitous, or even the basis for the operating system itself , building, managing, and deploying applications will be much easier than it is now. I, for one, am eagerly looking forward to Delphi 8 for the .Net Framework and being able to develop applications with it.
Microsoft clearly wants you to move to the platform as well. They make it totally easy to download and install; every new operating system includes it, and they are on an all-out marketing campaign to raise awareness in the developer community in order to promote its use among software developers. The most interesting thing about all of their actions, though, is that they clearly want to force people to make the jump to .Net by pretty much cutting off existing development paths and by not providing a clear migration path for existing applications. It appears that the idea is to instill a bit of panic in their community of developers -- "Holy cow, we'd better get on this .Net bandwagon, or we are going to be left behind!"
Sadly, that is pretty much the case -- VB and C++ developers who don't migrate to .Net soon will be (are?) pretty much abandoned. Sure, there's "Managed C++", but what serious C++ developer would really want to use this neutered version of the language? VB6 developers are abandoned in the sense that VB.NET is so different from what they have done that it is pretty much a whole new language. Code written for VB6 simply won't compile in .Net. And of course, there were no existing C# projects before .Net was released. Therefore, if you are a Microsoft development shop, and you want to move to .Net, then you are pretty much talking about a complete rewrite of all of your Win32 code no matter what you were using to develop those applications. There simply is no easy migration path to .Net for your existing applications.
And that, of course, begs the question -- "What to do for a new application that needs to run on Win32 today, but that will eventually migrate to .Net sometime in the future?" This isn't an unreasonable question -- shoot, it is probably very common. There are certainly new development projects being started everyday, and .Net looms out on the horizon for all of them. It is also a question that is tough for Microsoft shops to answer. While the .Net Framework is readily available, it is certainly not ubiquitous, and there are plenty of machines out there in the corporate world, small businesses, and homes that can't even handle the .Net Framework and that won't be able to handle it for sometime yet. That means that Win32 may be the only option for new development. However, anyone starting new development today probably will want to be able to migrate that app to the .Net platform in the future. If you choose C++ or VB6 for the Win32 version, there simply is no easy way to migrate that application to .Net. Any Microsoft-based development solution for the Win32 platform today means pretty much a complete re-write for that application when it comes time to migrate it to .Net.
But hey, there is a solution -- a non-Microsoft one -- to this problem: Delphi. Delphi provides a powerful, fully-capable Win32 development platform, and with the VCL for .Net, a much, much smoother migration path for Win32 to .Net. And when you do move to .Net, Delphi 8 for the .Net Framework provides powerful tool that is a first class citizen in the .Net development world. If you are starting a new development project in Win32, and need to be able to move that project to the .Net framework some time in the future, then Delphi is your only real choice. Microsoft-only development organizations quite conspicuously have no similar choice. The VCL is cross-platform -- at least between Win32 and .Net. Applications build in Win32 using Delphi and the VCL should migrate relatively smoothly to the .Net platform today . VCL for .Net exists, and has been available to Delphi 7 owners via the Delphi for .Net Preview since last summer.
Now I am not at all claiming that the migration will be totally seamless -- you may need .Net version of third-party components, and if any of your code calls into the Win32 API directly, you'll need to update that. In addition, not all of the technologies that were in Delphi 7 will make it into Delphi 8, and certainly the presence of garbage collection in the .Net framework may affect the way your code works, but the migration is clearly not a complete rewrite as discussed above. Heck, at this year's Borland Conference, they compiled and ran in Delphi for .Net an application that was originally a demonstration application for Delphi 1 -- a 16-bit development tool! Can't get much more compatible than that.
This fact alone ought to be changing the way that developers and companies view Delphi. Delphi will drastically lower the overall total cost of a project by drastically reducing the time and effort needed to migrate a Win32 application that needs to be built today to the .Net framework tomorrow. Delphi doesn't lock you in to either Win32 or .Net and doesn't force you to move to .Net faster than you or your budget might want you to. Delaying the transition to .Net can also save money, as building applications in Win32 now for existing hardware can extend the life of that hardware rather than accelerating the hardware upgrades to run the .Net Framework.
Smart managers already know that they are stuck in a tough spot and smart Delphi developers will be quick to point out the advantages of using Delphi for new development. So if you have been looking for that silver bullet to convince your managers or your customers to use Delphi as the development tool for that upcoming project, you now have it.
Permalink|No Comments Yet|Login at the right or register with the site to add a comment.
Another Blast from the Past. This one is mostly overtaken by events. The sale of CodeGear makes the whole thing moot. But I thought you might enjoy a trip down memory lane. Things certainly have changed for the better. This was originally published on January 6, 2006.
Another Blast from the Past. This one is mostly overtaken by events. The sale of CodeGear makes the whole thing moot. But I thought you might enjoy a trip down memory lane. Things certainly have changed for the better. This was originally published on January 6, 2006.
Every situation, properly perceived, becomes an opportunity. ~ Helen Schucman
Yesterday I went on a sales call with two of the Borland sales reps for the region. Before hand, we met at a Dunn Brothers coffee shop to get our ducks in a row, talk about the client, etc. The meeting went well – the Borland guys are very knowledgeable, professional, and clearly know what they are doing and what they are talking about. The client could probably benefit from Borland's tools and hopefully there will be a deal done. I learned a lot about sales from the meeting. (Sales is not my strong point.)
The interesting part of the whole day was the epiphany I had while meeting with the Borland guys at the coffee shop. Sales guys are into revenue generating. They need to maximize the revenue that they get per hour of effort spent in getting revenue. That's their job. That's what Borland wants them to do, they are rewarded financially based on that, so naturally, that is what they do. I don't blame them. Opportunity costs are very real, and they have to choose where to expend their efforts.
If opportunity doesn't knock, build a door. ~ Milton Berle
The big thing I learned from the sales guys is that Delphi isn't even on their radar. They aren't given a commission on Delphi sales. That's frustrating. But here's the thing: even if they were given a commission on Delphi sales, I doubt very much that they'd sell much of it at all. Remember opportunity costs? Opportunity costs drive the salesmen to concentrate on the Fortune 100 to the Fortune 500 crowd, and the sad fact that we Delphi developers need to accept is that the market for Delphi amongst these large companies is very small. Those companies have probably already chosen their tools – either Java or Microsoft or some other open source solution – and while a concerted effort to sell Delphi into that market might work, the opportunity costs are just too high to make the effort worth it for a Borland Sales Representative. Delphi's traction is slim in that arena, but the traction for StarTeam, CaliberRM, and Together is very high. (Remember, it's all about revenue per man hour. Dollars per man-hour selling Delphi is pretty low. Dollars per man-hour for CaliberRM, StarTeam, and Together is pretty high. So, as a result, the Borland sales force doesn't sell Delphi and they do sell the enterprise products. This should not be a surprise.)
Let your hook always be cast; in the pool where you least expect it, there will be a fish. ~ Ovid
When we were at our TeamB conference in November, Boz Elloy basically said the same thing. He told us that "Fortune 100/500 companies don't want Delphi. It's a waste of time for us to try to sell it to them". (My fellow TeamB'er Dave Nottage blogged about that meeting as well. For the record, Boz explicitly gave us permission to publicly discuss the meeting.) Boz drew a diagram with three levels: the "channel", SMB, and Fortune 500. He basically said that they only try to sell Borland Core into the Fortune 500. (This is why you won't see Delphi having anything to do with Core. Core is Borland's Java platform, based on Eclipse, with perhaps some .Net mixed in, but only in the form of plug-ins to Visual Studio.Net) For the Small/Medium Business market, they offer Borland Developer Studio and the ALM solution. And the "channel" is sites like Programmer's Paradise that simply sell Delphi for Borland. For Borland, Delphi only really exists in the bottom two arenas. It simply doesn't exist in the highest bracket – but not to a level that would make the effort selling there worth it. (So, if you are a Delphi guy, and you hear stuff about "Borland Core", just ignore it. I has nothing to do with you. Even though every fiber in your body screams out "Why isn't there anything about Delphi on the 'Core' pages!?!", resist said temptation and simply let it all roll off your back. Core just isn't your deal. Now, when you hear "ALM", your ears should definitely perk up, but Core? It's nothing to us Delphi guys. Let it go.)
Now, as I said, all this is very frustrating to a Delphi user. But if you step back for a minute, it makes perfect sense. Sales guys need to generate revenue, and so they spend their time doing that. Double the sales force won't alter this equation. It's purely a strange outcome resulting from the structure of Borland's product line. We Delphi dudes can bitch about this (and Lord knows we will), but the key thing is to get past the bitching, accept reality, and try to figure out a way to deal with this unfortunate situation.
In the middle of difficulty lies opportunity. ~ Albert Einstein
Okay, so I'm past the denial and anger stages (and I encourage all of you to get over the hump into acceptance as well), and ready to move on to trying to figure out what can be done to promote and expand Delphi. Every cloud has a silver lining. For every window that is closed, a door opens somewhere. In the middle of difficulty lies opportunity. (Someone stop me before I break my cliché meter). I really believe that there are any number of effective ways to market and sell Delphi given all of the limitations that we've already talked about.
The first thing to do is to examine the lay of the land. The thing that jumps out at me is this gaping hole that exists in the market. Delphi is sold almost exclusively in the channel. The folks that buy from the channel are, to a large degree, the little guys like us. We buy one, two, five copies for our development shop. If a medium-sized company wants to buy Delphi, they have to go to the channel as well. Unless they run into a Borland Partner that sells product, they won't get any personalized service. Delphi isn't sold into the Fortune 500 companies. But between the real little guys and the real big guys, there is this gaping hole where Delphi is useful and where lots of opportunities lay, but no one appears to be interested in taking advantage of these opportunities. These medium sized companies are ripe for the picking. I presume that many of them have modest development organizations. I presume that many are still evaluating .Net technologies. Many of them are using Visual Basic 6 – a product that has basically been abandoned by Microsoft. They know they need to make a move to newer technologies, but they aren't sure about it all. They aren't pleased with Microsoft, and would be willing to hear about products from a tools vendor that is almost compulsive about backwards compatibility and ensuring that old code can be moved forward. They might be interested in hearing about a company that is continuing to focus on RAD development in the Win32 space.
In addition, I also look out, and I see products flourishing that don't have any corporate backing (Think Ruby, Python, or Perl). These products are known and used, despite not being hawked by professional salesmen. How do they do it? They use the Internet. They use word of mouth. They use "guerilla marketing" techniques that cost very little and can reap large rewards. I see no reason why Delphi can't benefit in the same way.
Opportunities multiply as they are seized. ~ Sun Tzu
Here's an idea. Offer a free copy of Delphi Personal to any Visual Basic developer that will go on his blog and post a picture of himself holding a sign that says "I'm a VB developer and I want to try Delphi," or witty variations thereon. If there is no Delphi Personal, send them a trial disk and a t-shirt. Something. Have them email their links to Borland so they can be posted on a webpage at www.borland.com. Get some buzz going on the VB community about Delphi – even if some of them get mad. Remind disgruntled VB developers that Borland has always and steadfastly promoted backwards compatibility and will never abandon them. The transition from VB 6 to Delphi isn't all that much harder than the transition from VB6 to VB.NET, so there has to be plenty of sales to be had in this arena. Give away a copy of Delphi Architect to the guy with the coolest, funniest, or most outrageous picture.
How about an affiliate program? If you click on the link in the upper right corner of this blog and buy a copy of FeedDemon, I get a kickback. Hence, I take every opportunity I can think of to mention the fact that if you click on this link and buy FeedDemon, I get a kickback. Good for me, good for FeedDemon. I'm also constantly hawking Amazon products as well. (Heck, I'd be a NetFlix affiliate, but they turned me down!) Now, wouldn't it be cool if we had a similar program for Delphi? Of course it would. You'd put a link on your blog, wouldn't you? Wouldn't you like to make a little cash selling the product that you love so much? Of course you would! Can you think of a reason why Borland shouldn't have such an affiliate program? I sure can't.
Finally, it would be great if, in addition to an affiliate program, it was fairly easy to become a value-added reseller (VAR) for Delphi. As a guy who's company tried to do this, I can tell you that it was really, really difficult to sell Borland products for Borland. We had to front the cash for all purchases, and deal with a maze of bureaucracy to get product delivered to customers. It sure would be nice if we simply had a vendor ID number that we could use to order product for our customers online. It sure would be nice if Borland recognized and knew the consultants that actively want to sell Borland products. It was way, way to hard for us to sell Borland products, and if it is one thing a company ought to do, is make it easy for your fanatical supporters to sell your products.
If a window of opportunity appears, don't pull down the shade. ~ Tom Peters
Delphi has a great opportunity to make a lot of traction in the current market. There is a big transition to .Net going on, and many, many organizations haven't yet made the move. Many, many organizations still want to do Win32 development, and Delphi is really the only path from Win32 to .Net, as well as the only RAD tool still actively supporting Win32. Opportunities are only valuable if they are seized, and as Sun Tzu noted, they multiply when they are seized.
The problem of course, is that Delphi is caught between two worlds. It's stuck somewhere in between the grassroots, individual developer market and the big money, big company enterprise market. Delphi's position inside Borland makes it a bit of a red-headed step child. I think the product needs more autonomy to thrive. (That's why the idea of Delphi being sold and becoming part of a separate company was pretty appealing to me.) Delphi's bright light all too often is left back in the garage, and it needs to be brought out and allowed to illuminate the marketplace. The mistake that Borland makes, I think, is in utterly ignoring this gaping hole. If you go to www.borland.com, the content will vary, but you'll almost always see information about Core and about items of interest to Enterprise-level decision makers. What you won't see is "Small/Medium Businesses Click Here" or something like that. There practically nothing there for them. If Delphi is going to be treated differently than the Core/Java offerings, then there at least ought to be a place on the Borland website where the people that Delphi/BDS/ALM is aimed towards can go and get information. Again, there's that gaping hole. The information may be there, but it isn't utterly obvious how to get to it.
Small opportunities are often the beginning of great enterprises. ~ Demosthenes
If there is one sure thing in the marketplace, it's that gaping holes will be filled with something by someone. Right now, it seems like that gaping hole left by Borland and Delphi is being filled by Visual Studio and Microsoft. Sure, Microsoft has a huge budget to market to these folks, but if ever in the history of free enterprise there was a time when you can go crazy and market a product with little or no cash, it's now. With the advent of the Internet and the shrinking world it creates, all bets are off. The opportunity is out there. What can Borland and the Delphi community do with it?
Here's another Blast From the Past, this time about Kylix. It was originally posted on December 12, 2003.
Here's another Blast From the Past, this time about Kylix. It was originally posted on December 12, 2003.
Sadly, Kylix isn't fairing in the market place as well as Borland would like. Borland never really releases sales figures, but it's pretty safe to say that Kylix hasn't generated as much revenue as Borland would like. (Of course, no product every does, I guess. Who wouldn't want more revenue from any product?) Whether it has or ever will actually pay for its cost of development isn't known. What is known, however, is that Kylix is a pretty cool idea, that it is the most feature rich development tool in the Linux world. Sadly, though, it doesn't seem to sell many copies.
Now, why it doesn't sell probably can be debated, but whether it is because the Linux world doesn't want to pay money for tools and applications, because it is "too buggy", or because it "is a dead product", the fact is that it doesn't sell well. But certainly one of the reasons that it doesn't sell is that the applications it builds are perceived as a bit unwieldy. Kylix applications require the Trolltech qt library to be shipped with them. An application built with Kylix actually has to go from Pascal through a layer to a C++ library in order to work. The C++ version has to go C++ to Pascal, back to C++ again. Such a long trip doesn't make for a necessarily clean, easy to build and deploy application. Far be it from me to complain or second guess the design decisions made by the Kylix development team, but this fact is a sticking point for many potential Kylix customers.
Actually, I misspoke. It is GUI applications that have to make these trips. Kylix brings Rapid Application Development to GUI applications and Linux, but Kylix can do a lot more than that. Kylix can build application servers and Apache Dynamic Shared Object (DSO) modules. It can build these without all the hassles of the qt library and the multiple layers of code. In fact, it makes building such applications quick and easy, and it build native code executables an libraries. Kylix's ability to create power server applications is very much an unheralded and under-appreciated feature of the product. And since Linux's strength lies in being a server, there seems to be a disconnect somewhere.
This disconnect is where Kylix might actually be able to reverse its trend and actually make some money. I propose that Borland take Kylix, strip out all of the qt-based GUI features, and sell it as a server building application development tool. Call it ApacheBuilder, or MiddleBuilder, or ServerBuilder, or whatever (it should be clear that you'd be foolish to hire me to name your product). Sell it as a great way to build the applications that Linux users are actually running – server applications.
Linux's major inroads in the marketplace have been as a server, whether it be a database server, a web server, a J2EE server, or any other kind of server. Linux on the desktop remains the dream of many a Linux Distribution seller and Slashdot cowboy, but for now, it is just that, a dream. Microsoft has no intention of letting Linux cut into its desktop market the way it has in the server market, so trying to sell a development tool that builds desktop applications may be a non-starter, but selling and marketing a tool that builds the kinds of applications that Linux users want and need -- now there's a way to make money.
Now I don't know the technical requirements or exactly what work would need to be done to make this happen. Perhaps it would be too much work to make it worthwhile. Perhaps it isn't even possible. But I do think that marketing a tool that has as its main emphasis the building of servers would hit a sweet spot in the Linux community. For instance, Apache is easily the most popular web server on Linux, and Kylix makes it pathetically easy to build powerful, native DSO libraries that run on Apache. How many potential Kylix customers even know or realize this? With the dbExpress database technology and the WebSnap architecture, building dynamic, database driven Apache extensions is quick, easy, and powerful. That feature of Kylix, however, was sort of drowned out by the hype of the RAD, GUI development side of things.
Bottom line: By actually reducing the feature set of Kylix, and by marketing it as a server development tool, Borland might actually be able to turn Kylix into a successful product, and a tool that Linux developers want and need.
I've been wanting to find this post on an old hard drive or thumb drive, and then it occurred to me that I can dig it up on the good old Wayback Machine. The post below was originally written on November 14, 2003, well before I went to Embarcadero. (You can read the original in all its glory, including the original comments on the Wayback Machine) It was also written before the VS Shell program came about. In it I wrote about what eventually would eventually come to pass in the form of Embarcadero Prism. In digging around on the Wayback Machine, I found quite a few interesting articles I wrote back in the day, and I'll be publishing them here over the next week or two. It is kind of fun to read all the stuff I wrote when I was younger, brasher, and more foolish.
I've been wanting to find this post on an old hard drive or thumb drive, and then it occurred to me that I can dig it up on the good old Wayback Machine. The post below was originally written on November 14, 2003, well before I went to Embarcadero. (You can read the original in all its glory, including the original comments on the Wayback Machine) It was also written before the VS Shell program came about. In it I wrote about what eventually would eventually come to pass in the form of Embarcadero Prism. In digging around on the Wayback Machine, I found quite a few interesting articles I wrote back in the day, and I'll be publishing them here over the next week or two. It is kind of fun to read all the stuff I wrote when I was younger, brasher, and more foolish.
I've just returned from The 2003 Borland Conference where Borland spent an understandably large amount of time talking about the Microsoft .Net Framework (an precious little about Linux, I noted). Clearly we Delphi developers are standing on the edge of a pretty sharp inflection point, bending pretty radically in the direction of the .Net Framework. Microsoft is moving all of us into the world of managed code, and there doesn't seem to be much we can do about it. But the good news is I don't think we should want them to do anything about it -- .Net is a very, very cool platform, and one that I think we should embrace.
The inflection point doesn't just affect us developers. It actually affects Borland a whole lot more. They are the ones who have to make the tough choices about where to take their products and how to get there once they decide. Right now, all of their .Net plans are in the hands of the .Net Business Unit (formerly called the RAD Business Unit). These guys are responsible for Galileo, the IDE framework that is currently deployed in C#Builder, and will soon be deployed in Delphi 8 for the .Net Framework. Galileo is Borland's next generation IDE that builds on the code base of Delphi/C++Builder, but which clearly is moving into the .Net world.
We got a lot of good looks at Delphi 8 for .Net (hereafter called simply Delphi 8) at Borcon. During the opening keynote, we saw Michael Swindell build an ASP.NET web service, and then consume it with Delphi 8. He also did something many folks appreciated – he compiled an ran the original FishFact.dpr application that shipped with Delphi 1 (yes, Delphi 1 – the 16-bit version). That application compiled and ran just fine in Delphi 8.
But it is the development of Galileo is what provides Borland with it current, very difficult, challenge. As I listened to the Borland folks and talked to developers at Borcon, it became clear that while .Net provides an excellent opportunity for Borland and Delphi, it also makes things difficult for them. For perhaps the first time, Borland is playing catch-up in the IDE arena. Visual Studio.Net has been out for over a year, and the new, improved Version 2.0 is due next summer. While C#Builder offers some advantages in this market, it will almost certainly continue to chase Visual Studio.Net in features and support for future versions of the .Net Framework.
Borland, as we all are aware, has limited resources, and their main competition, Microsoft, has in effect unlimited resources. There is a small but highly skilled group of people developing the DCCIL.EXE compiler, while Microsoft has, literally, hundreds of people working on their compilers. Borland has a lean, mean team of developers working on their IDE, where Microsoft has, again, hundreds. Microsoft's marketing budget for their tools division is likely larger than Borland's yearly revenues. Borland has managed to compete in this environment by providing superior products and technology. However, even the staunchest of Borland groupies will agree that this gap has narrowed, and in some areas, the gap is created by Microsoft's lead.
I pondered all of this during my time in San Jose, and I've come up with a solution – a means for Borland to continue to leverage their technical expertise, to lower their overhead and to increase the return on their R&D dollars. It's not a solution that will seem immediately beneficial to most of you – indeed, I expect that the initial reaction of Delphi developers will be quite negative. Therefore, I ask you to hear me out, to consider what I've said, and weigh my argument before running off to the newsgroups to rant about how I've lost my marbles. I've bounced this idea off of a number of very smart people in the community, including people at Borland, and all of them have said that despite initial appearances, this is not a crazy idea.
First, some bona fides: I am a totally sold-out, completely assimilated Delphi bigot. I love Delphi. I was in on Delphi from the very beginning, I want to code in Delphi for the rest of my life, and I think that anyone who doesn't code in Delphi is crazy. I love Borland. I love using Borland products, I love going to Borland and hanging around the super-smart and super-nice people that work there. My livelihood is directly tied to the success of Delphi and Borland. I am on TeamB and spend interminable hours on the Delphi newsgroups doing what I can to help people use Delphi.
Second, I don't hate Microsoft, but I don't go out of my way to help them out. I like and use Windows almost exclusively, but pretty much don't choose Microsoft products if I don't have to. I buy Quicken, not Money, and I am typing this in OpenOffice, not Microsoft Word (though I confess I have Word on my machine. Who doesn't?). I don't like a lot of the things Microsoft does nor the way they generally do business, but I will defend to the death their right to do with their property what they want.
Thus, having said the above, I hope you believe me when I say that I propose what I do below with the purpose of trying to bring Delphi forward into .Net in the most competitive manner, and in a way that makes Delphi usable and desirable by the whole community of .Net developers and not just existing Delphi developers.
Okay, enough said. Here it is – here's my idea that you all have been waiting for with baited breath: Borland should abandon the Galileo IDE, license the Visual Studio.Net IDE via the Visual Studio Industry Partner program, brand it as their own, and enhance it with their own plug-ins, features, and capabilities, including first class support for the Delphi language.
What do you think?
Okay, hey, stop hyperventilating and remember that you promised me that you'd hear me out.
First, let me flesh out the idea in order to be clear about what I mean. Borland would license the Visual Studio.Net framework and build their own version of Visual Studio.Net. They'd put Borland Developer Studio on the caption, they'd put in their own palette, colors, look and feel, etc. They'd add full and complete Delphi support. They'd sell their own, complete product themselves. Note that I am not talking about building a plug-in to Microsoft's Visual Studio.Net, but a full-blown, "Borlandized" version of the product, into which Borland can add their own value-added features. They could sell it for whatever price they think will maximize their profits.
As far as I can tell, this idea is feasible and well within the licensing of the VSIP Premier Program. In fact, there's every reason to believe that Microsoft actually wants and encourages Borland to make this leap, as I'll discuss below.
I think this is a really good idea and I am going to tell you why. Here are the reasons:
Delphi is a magnificent language, beautifully mixing ease of use, readability, power, and elegance. It's been marvelously managed by the R&D folks at Borland over the years. It's not messy and overdone – it's just right. That being said, though, I think most Delphi fanatics agree that Delphi is a hard sell. Getting organizations to buy into Delphi isn't easy, as C++, VB, and now C# are all easier to buy into, because, as we all know, "no one ever gets fired for buying Microsoft."
(Don't you find the rapid adoption of C# rather galling? For years we Delphi people were told that Delphi wasn't used because it wasn't popular enough, that it would be too expensive to migrate code to it, etc. Well, C# wasn't popular either, and it's no cheaper to migrate to C# than it is to Delphi. But I suppose no one ever told us this all would make sense. Anyway....)
Galileo is not compatible with Visual Studio.Net. A Galileo project can't be imported as-is by Visual Studio.Net (you have to export it from Galileo first). Plug-ins for Visual Studio.Net don't plug-in to Galileo. Therefore, if a .NET development shop is using Visual Studio.Net, they have very little reason to buy either C#Builder or Delphi 8 for .NET.
However, if Borland's IDE works seamlessly with existing .NET projects, then many of the reasons not to use Delphi go away. Delphi programmers could work side by side with Visual Studio.Net-based organizations. If those organizations have a set of standard plug-ins for the IDE, Delphi developers can use them. The barriers to using Delphi become very short.
As it stands right now, Borland has to expend a lot of energy to build their own IDE. They have to play catchup with Microsoft in the area of .Net Framework support. The effort required simply to maintain and enhance the IDE infrastructure is effort that can't be spent on enhancing and adding value to the IDE.
If Borland were to leave the IDE infrastructure development to someone else (i.e. Microsoft), they could unleash their estimable R&D team onto the improvement of the IDE. They'd be free to implement all the things they've been wanting to add to the IDE, but can't because they've had to use up precious R&D resources trying to keep up with Microsoft.
To a large degree, the IDE world is becoming commoditized. Borland's PrimeTime IDE and the open source Eclipse project dominate the Java IDE world. Borland recently took the Java-based PrimeTime IDE and used it as the IDE for their new C++ offering. At this point, it would be crazy for any company to try to build a new Java-based IDE.
The same can be said on the .NET platform. Microsoft will always be a step ahead with their IDE, as they can begin working on it with the knowledge of what coming versions of .Net will do. Think of redoing a bathroom. By using the solid plumbing that Microsoft can provide, Borland can put all of their effort into decorating the bathroom instead of just getting by with cheap fixtures. If the plumbing is all complete when you start, you can afford to add beautiful wallpaper, high-quality fixtures, a jacuzzi, and plush carpeting.
With the commoditization of the IDE, the real selling points of an IDE are the unique value-added items that a company can provide, and if it is one thing Borland knows how to do, it is adding value to an IDE. Freed from all the "plumbing", Borland could add value by making their version of the IDE a showcase for their technologies like Borland Data Providers, Together, StarTeam, CaliberRM, etc. Borland has plenty of things they could do to make their version of the IDE very attractive, and given the proper resources and time to spend on enhancing rather than building, the IDE, they could provide a very compelling .Net development platform that provides support for the whole application lifecycle management process.
If Borland were to license Visual Studio.Net, then the Borland IDE would be compatible with all the existing Visual Studio.Net plug-ins and enhancements, as well as with existing features like C# and VB.NET. Borland wouldn't have to expend any more effort in building and maintaining a ToolsAPI. They wouldn't have to make the effort to make their ToolsAPI compatible with Microsoft's – compatibility would come for free. Delphi developers would be able to work side-by-side with C# developers. One of the main arguments against buying Borland's tools – that their IDE's don't mingle well with Visual Studio.Net – would instantly be removed.
This part is all pure conjecture on my part, but I think Microsoft wants Borland to do this. First of all, why would they even allow companies to do so via the VSIP program if they didn't want them to do it? The way I read the general information about the Premier level of the program, they actually encourage companies to "license and distribute" Visual Studio.Net.
Second, Microsoft clearly wants Borland to succeed in selling .Net solutions to developers. Without Borland, they have no real competition in the market space, and they are, to say the least, very sensitive about this. By encouraging Borland to develop their own, competitive version of Visual Studio.Net, they encourage .Net development (and not Java development), keep the Department of Justice off their back, and keep everyone happy. It's a win/win situation for them, and not only do I think they'd be happy to have Borland go this route, I'd be willing to bet that they are actually pushing Borland to do it. Borland could use this fact to negotiate a licensing and price deal favorable to Borland's bottom line.
The only reason Borland will do this is if they think they will make more money.
Right now, I am asked all the time – Why should I buy C#Builder? Well, if we were all honest, it is a tough question to answer. If Borland were to do what I am proposing, however, you could honestly answer back "Whynot buy C#Builder? It's totally compatible with Visual Studio.Net, and it has a huge number of enhancements and improvements over what Microsoft supplies. In addition, you can use it to manage your entire application lifecycle, which you can't even come close to doing with Visual Studio.Net. Plus, you can use the marvelous Delphi language if you want, all in the same package."
Come on, wouldn't you love to have a ready, compelling answer to the "Why should I buy Borland?" question? You know you would.
And of course, if the answer to the question is a good one, then people will buy Borland, and the more that people buy Borland, the more money Borland makes. The math on that is pretty easy.
Borland already has a rather extensive set of plug-ins for Visual Studio.Net, including Together Edition for Microsoft Visual Studio .NET, as well as Visual Studio.Net plug-ins for CaliberRM and StarTeam. These products require the consumer to buy Microsoft's IDE. Why simply sell these as part of a Borland IDE, which happens to be compatible with existing IDE's already? Don't continue to give your customers a reason to buy the competition's IDE – give them a fully compatible solution that Borland sells them.
I'm not silly enough to think that you all will simply buy my argument without any objections. So, in an attempt to head you off at the pass, I'll use my years of experience in the Delphi community to list a few of the objections that I know will be forth coming, and address them.
Yes, in a sense they will. Borland pioneered the concept of the IDE with Turbo Pascal. They have been the leader in IDE enhancement and integration since the beginning. Their reputation for innovation and technical excellence is unmatched, and making this move would be, in a sense, a cop-out.
But in another sense, giving up control may be inevitable; they might not even have a choice. As discussed above, the IDE market is trending towards commoditization. In the Windows/.Net world, this means that the IDE needs to be Visual Studio.Net compatible. Borland's IDE probably never would be compatible, and so it would very likely be marginalized at best. The C++ group gave up the control over their IDE as well, turning to the Java-based PrimeTime IDE, so the move is not unprecedented.
In addition, one could view Borland's bread-and-butter as IDE's, but really it's their ability to build user-friendly, productive IDE's that sells their products, and by not worrying about the guts of the IDE, they can dedicate all their efforts to making the IDE better, leaving the "grunt work," if you will, to Microsoft. And who wouldn't like to get Microsoft to do all that kind of work for you?
First, Borland's IDE's are already more expensive. Second, not necessarily.
It totally depends on what kind of deal Borland can negotiate with Microsoft. If, as I said above, Microsoft is quite anxious to get Borland to become a high-level VSI partner, Borland might very well be able to negotiate a very favorable (read 'cheap') deal. Perhaps Borland could use the patents that they own and that Microsoft needs to leverage a good deal. It may very well be that Borland, and not Microsoft, holds the high cards in this deal.
Again, even if Borland can't negotiate a good licensing deal, they still will be creating an IDE that has way more value than Visual Studio.Net, and so a higher price can be justified. Integration with the ALM products like CaliberRM, Together, and StarTeam will alone make any higher price worth it.
I understand this objection, but I don't think it really bears on the issue at hand, because this is true whether Borland uses the Galileo IDE or the Visual Studio.Net IDE. Either way, Borland has to make their IDE the better deal simply to overcome the inertia that buying Microsoft tools already has. By making themselves compatible with the Visual Studio.Net market, it actually makes it easier to make the value proposition to managers because one of the major hurdles of selling the Galileo IDE is removed.
This seems like the hardest objection to get over, but I think it is less of a problem that most would think. Sure, the great, hard, time-consuming work that the R&D team has done on Galileo will pretty much be shelved, and perhaps there will be some resistance inside Borland to that for reasons of pride and because they won't want to throw away the investment.
First, the pride issue. I don't know that this is as big a problem as you might think. While I was at Borcon, I spoke about this idea with a number of Borland people in the .NET Business Unit, and they all were intrigued by it, including the IDE Developers that I talked to. None seems to upset about spending less time developing the IDE infrastructure and more time doing the actual enhancements that they've wanted to do but had to delay because schedules and limited resources held them back. Increasing IDE enhancement time and decreasing IDE nuts and bolts coding time was quite appealing.
Second, the objection that Borland might have about throwing away an investment isn't economically sound. The R&D costs invested in Galileo are sunk – i.e. They can't be recouped no matter what Borland does. The money is spent, and it isn't coming back. The only way Borland can make money is selling the software they've created, and if selling a Visual Studio.Net-based IDE will sell more copies (as I believe it will), then the most profitable route is to do so. Or look at it this way – the R&D time is gone, no matter what Borland sells. At this point, they should sell that which maximizes profits, and selling a Visual Studio.Net product, is, in my opinion, the most profitable way to go. It means more bang for the buck on future R&D expenditures, as much more R&D time can now be spent on enhancement instead of bug fixing and IDE maintenance.
Third, I think it is almost inconceivable that Borland hasn't considered this idea already. As I argued above, I believe that Microsoft has been trying to get them to do it, and if so, this wouldn't be a new idea for them. In addition, my aforementioned conversations with people from Borland gave me reason to believe that my idea wasn't a new one to them. (Let me be clear, they all remained true to whatever NDA's they have and they gave nothing away that they weren't supposed to, but they certainly didn't act like I was talking lunacy). In other words, they may already be taking the idea seriously, and if so, one can't say they'd think it a nutty idea.
Well, there it is – a radical idea to be sure, but one that clearly has merit. I bounced this idea off of a bunch of very smart, very well known people both inside and outside Borland, and not one of them thought my idea outlandish, and everyone outside of Borland thought is was a good idea. (The Borland people were appropriately tight-lipped on the matter, as they should be) All in all, I think it is a sound, reasonable plan that will help push forward the Delphi language, and thus Borland, into the inevitable world of the .Net Framework.
I've been doing a lot of Markdown lately. It's a pretty interesting notion – it's similar in concept to HTML (a mark"up" language), but Markdown is about 443 times simpler. Jeff Atwood is a big fan (StackOverflow uses Markdown for formatting questions and answers…) and called out Markdown's creator, John Gruber, to be a better "parent" to Markdown back in 2009. Recently, he has called for a standardization of the language, asking Gruber to take the lead in doing so.
Apparently, however, John Gruber, creator of Markdown, wasn't as, ahem, "supportive" as he could have been. At first, Jeff didn't at first get response, but apparently then he did. But apparently Gruber wasn't exactly into it, or even that respectful about Jeff's reasonable request. I guess he'll "think about it". Gruber clearly is more from Philadelphia than most people from Philadelphia, I guess. Jeff points out that Gruber created something pretty cool, but then hasn't exactly been the most benevolent of fathers. And he's not asking for anything other than a blessing on what they are doing, really. Gruber could clearly be a bit cooler about it than he is being.
Markdown is one of those things that can easily become bastardized. It's specific purpose is to be human-readable and human-writable. However, the temptation is quite great to start adding to it, making it not both of those things. Hence Atwood's appeal. I hope Jeff makes something happen in this area, with or without Gruber's support.
Anyhoo. I've been using Markdown because that is what LeanPub™ uses it to create books. As I said above, one of the main ideas of Markdown is that it should be both easy to type and easy to read un-rendered. But that doesn't mean that we geeks don't want a tool to create it. . The most popular editor for Windows appears to be MarkdownPad, which is a nice tool. There is an early version of a WYSIWYG editor for Markdown called Texts – it looks promising but has a ways to go. Some folks appear to be using Emacs (yuck!) or other editors only available on the Mac.
However, LeanPub™ appears to be doing what Atwood is worried about – extending it just a little bit beyond what the standard is. That's fine -- they've added Tables, and different code tags using Pygment – all of which are not supported by the "normal" editors. For instance, I'm writing a technical book with lots of code samples, and tools like MarkdownPad can only be so helpful. As much as Markdown is meant to be human-writable, it's a bother to add in manually the tags for Delphi code blocks, for instance.
So pursuant to that, and because I want to make writing my book as easy as possible, I've built a Markdown Editor -- I'm calling it LeanTed -- that is designed specifically for LeanPub™ authors. It implements the LeanPub™ Markdown standard, supports code tagging, and other Markdown stuff that is used by LeanPub™.
It is written in Delphi XE3, as you would expect of me. The main editor window is a TSynMemo, and it uses the Ribbon controls that ship with Delphi.
You can get it here. Please be warned – this is currently a very early version and not fully featured. I'm using it myself to write my book, but I understand all the quirks. I'll be refining it as I use it more, of course.
Features that I already have on the list to be added include:
I'm releasing it as Freeware, but please feel free to donate to me for the software. $15 would be nice.
In any event, please let me know what you think in the comments, and please remember that this is totally alpha-level software and that you use it entirely at your own risk. I will, of course, be updating and improving it, incorporating feedback and suggestions.
If you go to Google and search for "measuring software developer productivity" you will find a whole lot of nothing. Seriously -- nothing.
Well, okay, not exactly nothing. You'll get a ton of links. But almost all of the links you find will talk about how measuring the productivity of software developers can't be done effectively. Some people will even argue that it shouldn't be attempted at all. Some others will describe techniques to measure developer productivity, that, well, everyone else knows don't really work.
There have been many valiant attempts to measure developer productivity, but all seem to end in less than successful territory. (We all know to laugh at "Lines of Code" as a productivity measure). Virtually any objective measurement you can apply to the software development process can be "gamed" into submission.
There are just too many variables to account for everything that goes into the development process. Measuring any one of them, or even a combination of them, simply cannot begin to capture effectively everything that is involved. You can't pick a surrogate thing to measure, but because of human nature, developers will react in ways that will skew the measurement.
Many studies have been done on this topic, with little to show for it. Every software development manager who has to fill out a developer's evaluation or determine who gets bonuses has struggled with this. Many a leading expert and guru has thought about and researched this thorny topic.
And not one of the experts has come up with a good idea or method to measure individual productivity. There are plenty of good and effective ideas on measuring team and project productivity, but there is a severe if not complete shortage of ways to measure individual performance and productivity.
For instance, Robert D. Austin wrote an entire book on this subject called Measuring and Managing Performance in Organizations and came to the conclusion that unless you can measure 100% of something -- that is, every aspect of it -- then there is no point in measuring at all. If you attempt to measure less than 100% of the things involved in a given activity, you will get what he refers to as "dysfunction", or what you and I might call gaming the system. And since software development is an incredibly complex and creative endeavor, it's virtually impossible to measure every aspect of it. Often it quite literally involves sitting and staring at a computer screen. How do you measure the productivity of that?
Here's Martin Fowler's conclusion in an article he entitles " CannotMeasureProductivity":
"This is somewhere I think we have to admit to our ignorance."
Neil McAllister of InfoWorld writes in an article entitled " The futility of developer productivity metrics"
"For most other companies, however, it might be best simply to forget about the idea of measuring developer productivity and rely instead on tried and true methods. That's right: A highly effective, productive developer workforce is often the result of high-quality, effective management. Unfortunately, nobody has developed a metric for that yet. Coincidence?"
Joel Spolsky writes:
"It's rather hard to measure programmer productivity; almost any metric you can come up with (lines of debugged code, function points, number of command-line arguments) is trivial to game, and it's very hard to get concrete data on large projects because it's very rare for two programmers to be told to do the same thing."
Steve McConnell, a widely regarded academic, author, and consultant says:
"So while I see the value of measuring individual performance in research settings, I think its difficult to find cases in which the effort is justified on real projects."
"So while I see the value of measuring individual performance in research settings, I think its difficult to find cases in which the effort is justified on real projects."
Like I said, it's hard to find a leading expert making the case for objective measurements, and easy to find plenty that say you shouldn't even try.
So I don't think that it's a tough leap to agree that there is no objective way to measure productivity in software developers. I know this is controversial, but it seems quite clear to me that software is more art than science, and measuring productivity in art is, well, simply not done. One does not tell Michelangelo that it took him too long to paint the Sistine Chapel because he should have been painting 1.4 square feet per day instead of 1.2. That would be preposterous.
Anyone who is charged with managing and leading developers is left in a quandary. We want to be fair, but if everything is subjective, how can we be?
The fact that there is no objective measure of developer productivity doesn't mean you can't measure it. It just means that you have to measure it subjectively . And we do that, don't we. You can look around your shop and just know who the productive developers are. There are probably developers you know that simply crank out good code faster and fix bugs more efficiently than the rest. For ease of discussion, I'll give this developer the name "Jason".
And just how do you know Jason is more productive and more valuable? You just do. You can just tell. You know it when you see it. But if you stop and think about it, Jason has some characteristics that you can figure out and write down.
What I mean is that if you stop and examine Jason and his work, there are things that you can say about him that describe what he is all about. They are subjective, sure, but you can write them down and give an "objective" measure to these subjective things.
So yeah, what I am proposing is a way to measure developer productivity and value via a subjective set of measurements. Think of it as a way to qualify the notion of "you just know that Jason is productive".
Here is the list:
Again, these seven items are all subjective measurements. All the questions require the evaluator to make subjective judgments. But a good lead/manager is presumably in their position because of their good judgment about such things, and so they should be able to make fair and accurate assessments about Jason's productivity using these "measurements".
Most of the questions ask for a yes or no answer, but all can spark a discussion with management or even the developer being evaluated. You could use these measures on a formal evaluation form. Whatever you do with them, it's probably better than the "just know it when I see it" approach you are probably taking now.
In the end, any evaluation, judgement, or other assessment of the productivity or value of a single developer will be subjective. No one has yet found an objective way to measure individual productivity in our excessively complex profession. But I am saying that it is possible to qualify and make judgments about a specific set of criteria as a small and humble step towards being able to do the thing that our industry has so far found very difficult.
My suggestion is that we accept reality and embrace the subjectivity -- and lack of objectivity -- in measuring developer performance.
Seriously, think about this:
with (Sender as tStringGrid), Canvas do
I'm doing some string grid work, and ran across this code out on the web. Wow. It does what I want, but really? It was code on a page with a date of like 1998, so at least we could say it was before many Delphi developers knew better. But still….. that is just awful.
Here's the truly hideous part – if I comment the line out, the code still compiles! Yikes!
I decided to give KhanAcademy a spin, and watched this set of videos:
And that let to me writing this code:
function IsPrime(const x: integer): Boolean;
i: integer;
i := 2;
if X mod i = 0 then
Result := False;
until i > Sqrt(x);
Result := True;
I know that this can be optimized (which I'll do if I end up watching the next video :-) ), but I don't often write really geeky code like this, so I thought I'd post it so you all can write lots of comments like you always do when I post code. ;-)
UPDATE #1: There was a bug if you passed in a negative number.
function IsPrime(const x: integer): Boolean;
i: integer;
if (x <= 2) then
Result := False;
i := 3;
if X mod i = 0 then
Result := False;
until i > Sqrt(x);
Result := True;
UPDATE #2: Took the Sqrt() call out of the loop.
function IsPrime(const x: integer): Boolean;
i: integer;
Wall: double;
if (x <= 2) then
Result := False;
i := 3;
Wall := Sqrt(x);
if X mod i = 0 then
Result := False;
until i > Wall;
Result := True;
UPDATE #3: The learning and optimizing continues! I updated the code based on more suggestions, but the special case of 2 is irritating me. I confess I thought a while (I'm not cheating by looking up implementations on Google…) and so I came up with something of a hack. Also, just for Julian, all the x's are lowercase now. Also, I learned/re-learned that 1 is not a prime either, by definition. Interesting. Any more optimizations out there? Is there a "correct" way to handle 2? The end goal here is to have a really nice, really efficient IsPrime function.
function IsPrime(const x: integer): Boolean;
i: integer;
Wall: integer;
if x = 2 then
Result := True;
i := 3;
Result := not ((x < i) or (x mod 2 = 0));
if not Result then Exit;
Wall := Trunc(Sqrt(x));
Result := not (X mod i = 0);
if not Result then Exit;
Inc(i, 2);
until i > Wall;
Result := True;
The views I express here are entirely my own and not necessarily those of any other rational person or organization. However, I strongly recommend that you agree with pretty much everything I say because, well, I'm right. Most of the time. Except when I'm not, in which case, you shouldn't agree with me.
Powered by BlogEngine.NET 184.108.40.206
Theme by Mooglegiant and modified by Nick Hodges


text:
Auto Body Repair Shop Warner Robins GA
The #1 Auto Body Repair Facility in Middle, GA
(478) 923-8811
810 Corder Rd
Warner Robins, GA
(Click For Directions)
810 Corder Rd
Warner Robins, GA
(Click For Directions)
Email David
Email David:
You can also contact us online using the following form. Fill in the form with your name, contact information, and comment. We will direct your question to the correct department and respond as quickly as possible.
* Indicates a required field.
Find Us
Phone: (478) 923-8811
Fax: (478) 923-8881
810 Corder Rd
Warner Robins, GA 31088
Fax: (478) 923-8881
810 Corder Rd
Warner Robins, GA 31088
Rental Vehicles
Our auto body shop is teamed up with Enterprise to give you the best deals on a rental.
Friendly Service
Our highly trained customer service staff always greets you with a smile; providing you with friendly, expert attention. RCI will treat your auto body repair needs with attention to detail and quality craftsmanship, while, at the same time, providing you with fair, competitive pricing.
Learn More
Learn More

subset: commoncrawl


text:
Here's some feel-good news that put a big ol' grin on our faces today: According to a newly released national survey, women value having girl time—and laughing with friends—above material things.
The study not only revealed that 82 percent of women believe that ladies-only time is super important, but that what we value the relationships that really make us happy over material things. The results show that we're twice as likely to prefer LOLing with our best pals than to receive a new piece of jewelry, get a manicure, or score a hot new pair of shoes.
That totally makes sense to us. After all, diamond earrings may sparkle, but they certainly won't help you recover from an out-of-the-blue breakup or take you our for celebratory drinks when you get that major promotion at work. When it comes to what we really need in life, our girls top our list.
Now, we want to hear from you: What's your fave way to bond with your girls? Share away in the comments!
Want more from Natasha? Follow her on Twitter or find her on Facebook.


text:
Amazon.com sells everything from Tuscan milk to Hello Kitty vibrators. And they were one of the first companies to incorporate customer reviews into their pages. But a few years back, some customers started posting reviews that were, um, not quite Roger Ebert-esque. I'm not talking about bad reviews. I'm talking about impish ones.
One of the first products to get the treatment was Tuscan Milk, 1 gallon, 128 fl. oz. For example:
I toyed with the idea of second business day delivery but Amazon in its infinite wisdom limited me to "Expedited."
Order Summary
Items: $3.99
Shipping & Handling: $26.25
Total Before Tax: $30.24
Estimated Tax:* $0.00
Order Total: $30.24
Why go to my local store and pay $2.99 for a gallon of milk when I can have it overnight delivered for 10 times that price? I think I'll get three gallons next time. As a current Pentagon employee, this makes perfect sense to me.
Others were pithier:
"Has anyone else tried pouring this stuff over dry cereal? A-W-E-S-O-M-E!"
Eventually, the New York Times got a taste, and ran a story about the milk reviews. Since then, reviews have rolled in that include the milk's chemical composition, a wistful short story, and even a small epic poem.
But it wasn't just milk. The Mountain Three Wolf Moon Short Sleeve Tee got the treatment:
This item has wolves on it which makes it intrinsically sweet and worth 5 stars by itself, but once I tried it on, that's when the magic happened. After checking to ensure that the shirt would properly cover my girth, I walked from my trailer to Wal-mart with the shirt on and was immediately approached by women. The women knew from the wolves on my shirt that I, like a wolf, am a mysterious loner who knows how to 'howl at the moon' from time to time (if you catch my drift!).
So did Chemical Shifts and Coupling Constants for Silicon-29, a book selling for the l0w-low price of "$7,679.00 & this item ships for FREE with Super Saver Shipping."
I'm a big fan of the NMR genre, but this book was really just phoned in. … It appeals to the lowest common denominator for cheap thrills when it should be striving to elevate the level of discourse. I mean, did we really need to slog through an entire chapter where Dr. Gupta describes, in agonizing detail, the time he took the spectra of two samples at the same time? He's probably the kind of guy who'll put his sample into a dirty NMR tube his friend just used, too. I actually went to the bathroom and washed my hands after putting this book down; I probably have hepatitis now.
If that's too rich for your blood, try some uranium ore. Just be warned, "I purchased this product 4.47 Billion Years ago and when I opened it today, it was half empty." However, someone else was "glad I don't have to buy this from Libyans in parking lots at the mall anymore."
Or you could just go with Wedding Chapel – 10 x 18 With Wood Roof for $21,420.47. (Did I mention they sell everything? Do you believe me now?)
Or the Grim Reaper on Skeleton Horseback Life-Size Prop for $3,699.43.
my kids just LOVE Mr. Scary Bones (as they affectionately call him). As soon as I pull him out of the closet they simply can't wait to jump into bed and pull the covers up over their head. And they've certainly never slept more soundly. I don't hear a peep out of them all night long. Thank you Mr. Scary Bones!
And if that's too macabre, there's a Guardian Angel for $149, and Vaseline Uranium Opalescent Glass Rose Butter Dish for $28.50.
Last week the butter was lost in the fridge, the uranium in a glowing cardboard box under the stairs and my bed was awash with rose petals and half-empty tubs of Vaseline – the usual scene of domestic bliss.
Now they are all handily together in one, urine-coloured glass jar beside my bed. Okay, so I have made the odd error in the middle of the night but, as my wife laughingly pointed out, the butter was a marginally better mistake than giving myself radioactive genitals.
Or Birth Control is Sinful in the Christian Marriages and also Robbing God of Priesthood Children!! (Paperback), for the low-as-hell price of only $135. Sadly, the book's Amazon.com Sales Rank is 8,755,333. (It's not selling better than Dan Brown? I'll be damned.)
I suppose I could get all philosophic about memes and a new kind of art form evolving to a new medium, and it being a pungently satirical comment on the internet as a vast commercial wasteland, but whatever. It's more fun just to read the reviews.


text:
What binds us all together is the passion to develop and to coach fascinating brands. Brands that are economically successful and that evoke emotions in the minds of consumers – in other words, best brands. Innovative communication is the path to this goal.
That means finding new ways to move the hearts of consumers: creatively, through media, technologically and by integrating all three. We live out this claim of turning brands into best brands every day at the "Haus der Kommunikation" (house of communication).+ SHOWREEL


text:
NBA.com is a site presented to you by Turner Broadcasting System, Inc. ("Turner") and included in Turner's network of affiliated sites that are owned, operated or offered by or on behalf of Turner or its affiliates ("Turner Network").
You are opting in to interest-based ads for the Turner Network site. Press the button to continue:
If you opt out of interest-based ads on this site or another Turner Network site, please be aware of the following:
You have already opted out and you do not have an active cookie from this network.
Updating cookie...
We make ads more relevant to you
Our goal at NBA.com as part of the Turner Broadcasting System, Inc. (Turner) network of affiliated sites is to provide you with ads that are relevant to you. Advertising enables us to provide the rich content for which sites on the Turner Network are known. Often our ads are based on the content of pages you are viewing, but we also provide ads tailored to your interests. Our hope is that by presenting ads tailored to your interests, we will enhance your experience across the Turner Network's diverse websites. You may learn more about our practices by reading our Privacy Policy.
How do we do it? An example:
If you often visit content on the Turner Network about travel, we may use "web beacons" to infer your possible interest in travel and may deliver an ad to you related to that interest. It's important to understand that these technologies do not use personally identifiable information to make this happen but instead use anonymous identifiers within the "cookies" stored in your browser.
What happens if I opt-out?
If you opt out of interest-based ads on this site or another Turner Network site, please be aware of the following:
I'd like to opt out of interest-based ads. How do I do that?
Need more information?
Privacy Policy
For additional information on cookies, web beacons and our collection and use of information, please read our Privacy Policy.
What's my status?
Your current status on THE TURNER NETWORK is:
Other resources for making online
Ad Choices
Self-Regulatory Principles for Online Behavioral Advertising
Visit the online home of the Self Regulatory Program site for more information and choices about interest-based ads. The Turner Network adheres to the Self-Regulatory Principles for Online Behavioral Advertising that are posted on this site.
The Network Advertising Initiative ("NAI")
Visit the NAI site to manage your preferences for the receipt of interest-based ads from NAI member ad networks and ad servers (e.g., Fetchback, Yahoo).


text:
As more businesses continue to increase their presence on Facebook, LinkedIn, Twitter and other social networks, social media jobs, too, are predicted to rise. According to the Bureau of Labor Statistics, social media jobs will jump by 21% in 2013. That's a lot of hiring.
Social media specialists - sometimes referred to as social media managers or social media marketers - bring a bevy skills to businesses looking to beef up their presence and results on social networks.
"Anyone can build a Facebook page, but it doesn't mean it's successful. These people go deeper and rely on analytics to run good campaigns, tying it all back to ROI," says Gina Oliveri, senior consultant with executive staffing firm Bowdoin Group.
Here's a look at what social media specialists do, including the skills they bring to the table, their responsibilities, typical salaries and more.
Social media specialists are responsible for generating and maintaining a presence on social media sites, such as Facebook or Twitter, as well building an audience through campaigns, ads and updates, Oliveri says.
Just as important as the campaigns they run are the data points they derive. Social media specialists are often tasked with making the connection between statistics and how they translate to a campaign's success, branding and, of course, money.
Social media specialists likely reside within the marketing department, but usually work with a number of the business units. Job candidates often come from a junior or entry-level marketing or advertising position.
Social media specialists should have a deep and personal familiarity with the two big social networks: Facebook and Twitter. But beyond that, they should have knowledge of other social networking platforms, such as Foursquare, Digg and Stumbleupon, Oliveri says.
It's also important that candidates understand the business's audience - such as its demographics and interests, in order to target posts appropriately. Strong writing and presentation skills are also key as social media communications are customer-facing whether the specialist manages external or internal networks.
Lastly, data analytics skills are becoming more necessary. "Social media specialists need to know not only how to run campaigns and ads, they need to know how it all ties back to ROI and how the business can generate revenue from it," Oliveri says. "You need to be a number-cruncher at some level - put on headphones and look at the data, then come back with intelligent insight so the business knows what to do next."
Like most careers, salaries for social media professionals will range widely based on a number of factors, including the size of the company, location, experience level required and more. Generally, Oliveri says, social media specialists should expect to be paid around £30,000 for an entry-level position all the way up to low six-figures for a more experienced managerial position at a large company.


text:
This service is offered to members of the VisitKorea website and Facebook through account log-in.
Region : Gwangjin-gu Seoul
Type : Museums
Seoul Children's Museum is a facility established by the Seoul City government to help enhance the children's creativity and imagination. The museum offers...
Region : Gwangjin-gu Seoul
Type : Tobogganing
The Korean Children's Center, located in Neung-dong in the Gwangjin-gu, Seoul, has a many subsidiary facilities as well as its excellent snow sledding field. Th...
Region : Gwangjin-gu Seoul
Type : Exhibition & Memorial Halls
Gwangnaru Safety Experience Center was founded in 1999 after two fire accidents in which many children lost their lives. These tragedies emphasized the necessit...
Region : Gwangjin-gu Seoul
Type : Auditoriums
Opened in 1981 as the Little Angels Arts Center, the Universal Arts Center is a performing art theater that has been contributing to the development of Korean p...
Region : Gwangjin-gu Seoul
Type : Museums
Sejong Museum exhibits folk art, wooden crafts, clothing, accessories, pottery, paintings and calligraphy collected for over 40 years by the couple who founded ...
VisitKorea does not guarantee the quality of products or services introduced on its site and is not responsible for any direct or indirect losses resulting from use of said products or services.


text:
Keith G. necesitaba un nuevo diseño de página web y lanzó un concurso de diseño en 99designs.
Un ganador ha sido elegido entre 63 diseños de 23 diseñadores freelance.
We're ClearClick Software, a small business that sells mostly audio/video related software.
We sell software and electronics that are easy and quick to figure out and use.
Our audience is NOT technical people. Our products is designed for consumers and business owners, mostly in the USA: everyday people of ages 25-80 (not kids).
We need a 1-page web page designed for a new product.
This web page should have a very similar layout as our other website, http://www.Cassette2USB.com. However, it should have a similar style as the website screenshots in the attachment.
Important: this will be a sales page, so it needs to really impress visitors & keep their attention! For reference, we're also including several landing page examples that we liked. This design should have a similar "flashy" style.
Words to describe design: web 2.0/cutting edge/easy to use/up to date/shiny/young. Should include big fonts & arrows to draw visitors' attention.
** No HTML coding required. We just need the unflattened design files! **
In the ZIP, you'll also find variations of the 3D device illustration. We have a slight preference for version A, but use whatever you think best. Also, the illustration includes the device cap, but this could be removed if you think it looks better.
Also included are the site logo, company logo, and other images referenced in the sketch. Some are placeholders, which will be replaced by the actual images later.
Absolutely NO copyrighted images, although stock photos & illustrations are awesome!
Finally, if you enter this contest, be prepared to make several minor changes to the final design if you win.
Marketing team, ClearClick Software
See attached Word doc
See attached screenshots


text:
for a song
This page is about the idiom for a song
If you buy or sell something for a song, you buy or sell it at a very cheap price.
For example
- When I was in Vietnam I bought some beautiful lacquerware for a song. I still can't believe how cheap it was.
- James had a really valuable record by an old American band called The Cramps, but he sold it for a song at a garage sale. He didn't know how much it was worth.
See Idiom of the Day today
Contributor: Matt Errey


text:
Space Alert: the New Frontier
by: Vlaada Chvatil
Game Type(s):
Players: 1 - 5
Age: 13 +
Available Languages
Status: In-Print
Stock Number: 441
The New Frontier contains several new expansions for Space Alert. These can be used individually or in combination to provide variety, challenge, and new modes of play.
Also, we have found an error in the rules. It says there are 96 action cards and 48 threat cards. There are actually only 90 action cards - and 50 threat cards - two of these cards are replacements for the two cards that were misprinted in some Space Alert games.
You may also be interested in...


text:
Mooncakes | 月餅
Hurry up! Sales Ends In
Hurry! Only 2 Left in Stock!
Ever wondered how many different mooncakes there are? Similar to kueh, you might find variations of the same style of mooncakes in both their place of origin and beyond as well.
Here is a compilation of the different kinds of mooncakes available out there, some may look similar but have different textures for their crust due to different ingredients and methods etc. Others have different flavours. These are only a fraction of what is available out there.
This print comes in a limited run of 45 pieces for A3 and 50 pieces for A4.
Our offerings are carefully curated according to our Naiise Marks: uniqueness, functionality, the ability to inspire or bring joy, and social responsibility to our environment & communities. Above all, they are original and designed to add value to our lives.
|Screen printed, medium weight polyester/P.U.
|39cm x 41cm
|Lee Xin Li


text:
After chatting with Iain the other month I decided to start filming some short bunkai videos of some of the things I teach when I run courses at Karate Clubs.
This short video is an application I used in the Heian Flow System. It is certainly not the only use of Shuto Uke and Nukite (I'll be fliming another favourite soon) but one of my favourites. As I note in the video I've increased the distance between Tori and Uke to make it clearer to see what is going on although that is at the cost of some of the application.
I'll get used to talking less and making the videos shorter the more I do these.


text:
Time is up. Now what?
The Federal Communications Commission (FCC) narrowbanding mandate is now in effect. All public safety and business radio users must be operating systems with minimum 12.5 kHz efficiency technology. Users operating noncompliant systems could face FCC penalties such as admonishment, heavy fines and even loss of license.
Find out what's next for narrowbanding after January 1, 2013. Read Icom's Frequently Asked Questions for users who haven't narrowbanded yet or want to take narrowbanding to the next level.
Read Icom's Narrowbanding FAQs
Icom Narrowbanding Solutions
IDASTM Digital Radios
Icom P25 Radios
Ready Your Communications for the Future
Watch this quick video about IDAS, a reliable digital solution that exceeds current FCC narrowbanding standards at 6.25 kHz efficiency technology.
Contact your local Icom dealer to narrowband your system with IDAS.


text:
CharieVR on Family Tree Circles
sort: Date Alphabetical
view: full | list
view: full | list
Journals and Posts
Looking for information on Mowbray Trenton DaCosta of Jamaica
Mowbray Trenton DaCosta was my great grandfather, originally from Jamaica who came to Grand Cayman, apparently in 1870's, I estimate.
He was a teacher in Jamaica and I am wanting to know where he trained and for what subjects and if he taught school in Grand Cayman as well.
- Displaying 1-1 of 1 Journals
- 1
- of1


text:
Eli and Florence are my husband's great-grandparents. The were married in Wisconsin on April 24, 1886 and had 14 children: Emily, Eugenia, Frank, John, Martin Joseph, Henry, Lucy, Louis Felix, Alice, Ella, Wilfred, Anastasia, Patrick, and Walter. Every year in June the descendants of Eli and Florence Cayemberg nee Villers hold a family reunion in Green Bay, Wisconsin. I've never been to one because of distance, but 2012 will be at the 75th reunion and I've already decided that we'll be there. Can't miss a 75th!
|Florence and Eli Cayemberg (date unknown)


text:
Ever wondered what it was like behind the scenes of an award-winning Tournament of Roses Parade Float? Want to find out how amateur filmmakers are using their talents to spread the word about water conservation? Looking for valuable water saving tips from leading authorities in gardening like Paul James, The Gardener Guy?
Visit the Rain Bird Corporation YouTube channel to view our entire collection of videos.


text:
NSF is making changes to how data management plans are submitted as required components of a proposal. All proposals submitted on or after January 18, 2011, must describe plans for data management and sharing of the products of research, or assert the absence of the need for such plans. FastLane will not permit submission of a proposal that is missing a Data Management Plan. Proposals must include the plan as a supplementary document of no more than two pages. The Data Management Plan will be reviewed as part of the intellectual merit or broader impacts of the proposal or both.
The "Data Management Plan" should describe how the proposal will conform to NSF policy on the dissemination and sharing of research results (see prior bullet points), and may include:
Data management requirements and plans specific to the Directorate, Office, Division, Program, or other NSF unit, relevant to a proposal are available at: http://www.nsf.gov/bfa/dias/policy/dmp.jsp. If guidance specific to the program is not available, then the requirements established in this section apply.
Simultaneously submitted collaborative proposals and proposals that include subawards are a single unified project and should include only one supplemental combined Data Management Plan, regardless of the number of non-lead collaborative proposals or subawards included. Fastlane will not permit submission of a proposal that is missing a Data Management Plan. Proposals for supplementary support to an existing award are not required to include a Data Management Plan.
A valid Data Management Plan may include only the statement that no detailed plan is needed, as long as the statement is accompanied by a clear justification. Proposers who feel that the plan cannot fit within the supplement limit of two pages may use part of the 15-page Project Description for additional data management information. Proposers are advised that the Data Management Plan may not be used to circumvent the 15-page Project Description limitation. The Data Management Plan will be reviewed as an integral part of the proposal, coming under Intellectual Merit or Broader Impacts or both, as appropriate for the scientific community of relevance.
Office of Research and Sponsored Programs
1324 West Wisconsin Avenue
Holthusen Hall, Suite 341
Milwaukee, WI 53233


text:
By Chris Voss
The Chris Voss Show
Chris Voss gives his unboxing review of the NEET Cable Keeper.
Sign up to get the latest on sales, new releases and more …
Have a question?Need support?We would love to hear from you:
Email us at: email@example.com
15080 Hilton DriveFontana, CA 92336
Finally, the solution we've all been waiting for. Untangle cluttered cables in your bag, around the house and office with the NEET Cable Keeper. It's a simple-to-use cable management tool available in a variety of fun colors to match any style and décor. Created to Organize, Protect, Identify and More. NEET Cable Keeper: Zip Up Tangled Mess & More. Designed and Assembled in the USA. Patent Pending.
© 2020 NEET Products.
Website builder by Shopify