Archive for the 'software' Category

10 Million Reasons to Be Bullish on PostgreSQL

Friday, March 28th, 2008

IBM invests in PostgreSQL vendor EnterpriseDB.

This is good news for two reasons: First, it throws yet another (big) blue chip name behind the PostgreSQL brand and ecosystem. IBM was one of 4 firms participating in EnterpriseDB’s C round of venture financing, which raised $10 million for the firm.

Second, EnterpriseDB is also rebranding their value-add packagings of PostgreSQL as Postgres Plus and Postgres Plus Advanced Server. The products used to be branded as EnterpriseDB Server and EnterpriseDB Advanced Server respectively. This new naming scheme should bring more brand recognition to the underlying PostgreSQL project.

For those not familiar with EnterpriseDB, their main claim to fame is an Oracle compatibility layer that they’ve built atop PostgreSQL. This allows firms to save a few bucks by replacing Oracle databases with EnterpriseDB’s distribution of PostgreSQL. They also provide support and other value-added software and services for customers using PostgreSQL.

Speaking of databases, I highly recommend checking out FLOSS Weekly: Episode 26 where the guest is D. Richard Hipp, the creator of SQLite. SQLite is the most widely distributed relational database in the world. Aside from the interesting technical content, the interview can stand on the merits as a human interest story of how one man’s pet project can have a huge impact on the world.

Python Success Story: Checkout

Friday, June 22nd, 2007

Here’s an Apple Developer Connection profile of Checkout, a Point-of-Sale application developed in Cocoa and Python, using PyObjC (Python<->Objective-C bridge) to glue the Python-based business logic to the UI and other framework-level Cocoa libraries.

On the value of Python and development process:

Bok explains how this combination contributed to the development efforts. “Using Python and the PyObjC bridge gives you the best of all worlds—Python and Cocoa,” Koen says. “Python is great for unit testing and agile development. Because Checkout manages critical business information, we swear by writing unit tests for everything that even comes close to any financial data.”

Koen continues, “And since Python is interpreted and not compiled, launching a debug session takes seconds. You can make a modification and see the effect of the change immediately.”

(From MacDevCenter.com)

Good Mainstream SQLite Article

Thursday, June 21st, 2007

This article in Guardian Unlimited provides a good introduction to SQLite and the story behind it.

Since SQLite is the database used by cool stuff like Google Gears, Apple’s Core Data, and (cough) ProjectPipe, it’s great to see it get positive coverage in a mainstream news outlet.

The article is also a veritable infomercial for automated testing:

Hipp attributes much of the reliability of SQLite to his use of tests. Less than half of the program code is delivered as the database engine. The larger part consists of thousands of automated tests, which exercise the code and check that the results are as expected. “That’s the real key to keeping it working well,” he says.

One of the goals for SQLite was to keep the database library very small (under 250KB). If Dr. Hipp et al. hadn’t spent all that time writing automated tests, I’m sure that SQLite would also have a very small user base as well :)

The Client/Server Renaissance

Monday, June 19th, 2006

Don Dodge has an interesting analysis of Ray Ozzie’s recent Tech•Ed speech.

I think that there will be four key drivers of this movement back to the client/server world, none of which involve dusting off your old PowerBuilder books (not that there’s anything wrong with that):

  1. Tools like the iTunes Music Store and (our very own) ProjectPipe.com will leverage and blend web technologies and existing desktop infrastructure, so that the underlying, infrastructure-spanning solution “just works”.
  2. A platform for desktop-level, consumer-friendly “mashup”-type applications, that glue together RSS feeds, web services, and local data in interesting and useful ways. This will probably be some sort of Firefox extension.
  3. Microsoft Live, and the ecosystem that springs up around it.
  4. The movement toward desktop web applications. I think that two factors will drive this:
    • The continued growth of rapid web dev frameworks, such as TurboGears and Ruby on Rails, which increases the supply-side (i.e. developers, ISVs) opportunity cost of not using one of these frameworks when building an application.
    • The maturity and growing popularity of embedded databases such as Sqlite, which considerably simplifies the deployment footprint for such applications.

Don states that “The seamless, blended, client-server-services approach makes intuitive sense.” I couldn’t agree more. This was one of the core problems that we set out to solve in ProjectPipe, since so much project activity occurs on the desktop, yet so much collaboration occurs over the Internet.

We’ve referred to this blend of “Thin Client” (web) and “Thick Client” (client/server) as our Right Client Architecture, where we let the user pick the right tool for the job, and we figure out how to do the integration. For a real-world example, read about how ProjectPipe integrates with MS Project and Excel.

Misc. links from the week of May 1st, 2006

Friday, May 5th, 2006

In the (infinitesimally small) event that you are wondering what I’m listening to, watching, and reading when I’m not making regular updates to my weblog, here’s a smattering of links for your multi-media enjoyment:

Audio: Bruce Eckel has released a series of audio interviews titled Thinking in Code: Bruce Eckel Interviews Software Luminaries. This series features a number of conversations between Bruce and a bunch of other big-ticket names in the software game, including Guido van Rossum and Anders Hejlsberg. I’ve listened to a couple so far, which have each been well over an hour in duration, and it’s definitely time well-spent.

Video: Sean Kelly put together a video titled Better Web App Development. It’s over 20 minutes long comparing the relative merits of J2EE for web development compared to Rails, TurboGears, Plone, and Django. My $.02: I think that Zope/Plone received a more favorable treatment than I would have expected in this kind of web framework shootout. Plone is a very capable and customizable Content Management System. However, for general purpose development, using an object database in lieu of a more traditional relational database is not a decision to make lightly. Rather, my bet is on TurboGears to put up some big points in the coming six months.

Text: Tim O’Reilly’s recap of his talk at the April 2006 Startup School. Also, here are the notes that were taken by the attendees.

Stay Tuned

Friday, February 17th, 2006

I’m in the process of doing post-production on a 15 minute screencast that provides a walkthrough of ProjectPipe. It should be available on Monday.

I’m using Camtasia Studio, the screencast tool developed by TechSmith. Far and away the most impressive Windows app I’ve used in a while.

PyBlosxom

Thursday, December 22nd, 2005

We’ve just launched a new company website for Botonomy, and product websites for ProjectPipe.com and AtomAntenna.com (our next product).

We are using PyBlosxom as our content management system.

::READ HERE

PyBlosxom, coupled with Subversion, nicely balances ease-of-use, customizability, and control. We can test-publish to n-machines before the site content goes live, and we can quickly revert back to a well-known state if something goes awry.

I’ll write up a more nuts-and-bolts article about our site architecture and editorial process next week. But in the interim, many thanks go out to Will Guaraldi, Ted Leung, Wari Wahab, and everyone else that has contributed to PyBlosxom.

]]>

Firefox 1.5

Thursday, December 22nd, 2005

Several hours ago, Firefox 1.5 was finally released. The feature that I was most looking forward to is its canvas> support. Canvas is a HTML element that can be used to programmatically draw and render graphics using JavaScript.

When I saw the Canvascape demo, it struck me much in the same way that Google Maps did when I first dragged a map across the screen: Wow.

When they write the history books, I think that Google Maps and the experimental demos the likes of Canvascape will be seen as pivotal shifts in our expectations of thin client behavior. In the case of Canvascape, you’re using the browser to run a “First Person Walking” game natively. The data that makes up the 3D maze is as much a first-class citizen on the web page as the text within a set of HTML

tags.

One of my favorite quotes is William Gibson’s famous line:

“The future is here. It’s just not evenly distributed yet.”

And yes, while Apple invented the Canvas tag, and has provided Canvas support in Safari for a while, I think that this is a case where Firefox takes the “future” and simply “distributes it more evenly”.

I know that it’s a bit early for 2006 predictions, but I’ll go on the books that one of the “Next Big Thing”(s) will be fueled by the Canvas tag support in Firefox, and that the Firefox 1.5 release will go on the books as a landmark event in the evolution of online data visualization.

]]>

del.icio.us Bookmarks and Verbal Hyperlinking

Thursday, December 22nd, 2005

Although I haven’t updated my blog in several days, I have gotten into the habit of making regular additions to my del.icio.us bookmarks. FYI, my list is available at http://del.icio.us/mikecoyle.

I’m a newcomer to the del.icio.us scene, having only started using it in October of this year. But as of late, I’ve come to the realization that del.icio.us bookmarks are becoming the footnotes of my life.

More and more, I find myself talking about something that I just read (or read months ago for that matter), and telling the other person “Just go to delicious slash mikecoyle for the link”. This is far more precise than trying to describe the various links and incantations it took for me to find the article in the first place.

For me, referencing del.icio.us in this way is not a vanity thing (i.e. referring them to “my page”), but rather it’s the simplest way to ensure that I can direct someone to a non-trivial URL, especially when emailing/IM-ing them a link in a timely fashion is not an option.

This notion of “verbal hyperlinking” goes on all the time when talking about the current headline on Slashdot, Drudge, etc. But for those items that aren’t easily discovered by hitting one of the news sites, del.icio.us comes in mighty handy.