Posts Tagged ‘review’

A couple days with Git

Wednesday, December 12th, 2007

So my first impressions with Git which I’ve heard some various discussions about in #macsb has been quite good. It’s pretty easy to get started with, specially with the decentralized nature, meaning you don’t need to setup a repository and do the whole import/checkout dance that you have to do with subversion. If I have a project that I want to start versioning, I just jump right in and tell git to fire it up, add all the files (save a few like say build/) and then commit and I’m already versioning.

I always found the starting of a new project with subversion to be a bit confusing and awkward. It involved setting up a repository if there isn’t one, or a new folder in an existing, Importing the project somewhere into the repository, Finally checking out a fresh working copy of the project, moving aside your previous copy of it. There may be some better way that doesn’t involve shuffling your old pre-svn copy out of the way, but its still kinda clunky. From then on it’s not really that bad though.

One of the first things I noticed which was different, but that I actually like, is that by default you have to explicitly tell git what you’re going to commit. You go though and add any new or modified files that you want to be part of the commit. I like this since very often I find myself committing bits and pieces of a project, but not committing every modification I’ve made. In subversion I either have to do separate commits, or specify each thing after ’svn commit’ which is not as elegant as actually marking items for a commit like the approach git seems to take. It agrees with my method of going through a lot of changes and approving certain changes for actual committing.

There’s also some other benefits that I have yet to dive into beyond reading about, but one of the other strengths of git that people talk about, which is branching. Git allows branching in such a simple efficient way that you can easily branch off and experiment with stuff, easily coming back to your stable branch, merging anything that might have been a success. I’ve always found the procedure for branching in subversion to be a bit daunting, git’s in comparison is trivial. Creating a branch in git is literally a single command, making it much more attractive to allow you to mess around, track changes, but easily keep things cleanly organized. This I will definitely have to experiment to see if it really is as awesome as it looks.

I’d definitely recommend giving git a serious look, specially for anybody that isn’t already invested in a particular versioning system. It seems to be a decent fit for an independent developer like myself, and even sounds like it would work well at work if we weren’t already heavily using subversion. Since my personal projects only have me working on them, it works well for me to get going quickly with tracking changes, not having to do the bit lengthier setup that seems to come with subversion.

Check out the Git Tutorial to get a good feel of how git works. See if it may appeal to your way of doing things.

Zend Core First Impression

Thursday, May 17th, 2007

So Zend Core recently released an update which has the PDO extension so I can now use it since all my applications run off of PDO for data access. Problem is I’m trying this on Mac OS X which currently has a problem with building PDO separately for PHP. So I had to wait for Zend Core to integrate the core PDO extension to even use it.

Zend Core offers a simple installation and management suite for a PHP installation. It installs PHP and it’s components along with some optional components (like phpMyAdmin and the likes and even Apache 2) and gives you a web interface for managing your php configuration, seeing general status of Apache, benchmark (ap), and grab updates automatically or manually for Zend Core. It’s also free to use it seems, you pay if you want support.

My favorite part of this is probably the offline searchable PHP manual it also includes and the easy to use php.ini editor that lets you edit settings & load extensions easily. Check out some screenshots.




Technorati Tags:
, , ,

MySQL Tool Review: phpMyAdmin

Tuesday, May 30th, 2006

One of the most popular MySQL management tools out there, phpMyAdmin has become widely used, but I’d have to say it’s one of my least favorites. I did use it back in the day and it wasn’t too bad, some of the features it offers are very useful. It’s one of the few tools to let you do things like rename a table simply, or other move-stuff-around type actions. My discontinued use of it started out with a particular update and there after performing horribly slow on my G3 server. I’m assuming this particular problem could possibly be gone now, but it made me ditch it quite fast. This could’ve easily been some other problem for all I know, but first reaction just was to ditch it and use CocoaMySQL instead at the time. I’ve never used it since partly because I got along fine with various other tools, and also my current employer does not use it due to security concerns. From phpMyAdmin being such a popular application, it’s prone to security holes way more frequently than other tools, mostly because of it being a public accessible tool for your MySQL database.

Shots of both phpMyAdmin themes/styles:

Overview of the ups and downs of phpMyAdmin:

Pros

  • Access from any machine, no installation of client software needed
  • Robust set of features
  • SQL file import and export with reasonable options
  • Table operations like renaming, moving data etc.
  • Simple tools for copying data or structure from database to database
  • Display of row data only limited to your browser ability to render that much html (or just use the pagination)
  • Full suite of tools covering querying to privleges

Cons

  • Uses frames for it’s interface, can be funky sometimes (would be better with no frames, ajax, even iframes maybe)
  • Font sizes of default themes bit wonky on latest one I tried, fixable of course (big on default, tiny on dark)
  • UI can be a bit sluggish due to it being a web application, depending on connection speeds etc.
  • Can be prone to security holes due to popularity, updates are usually quick though
  • Can’t do ‘quick edits’ like some desktop clients allow

The power and versatility of phpMyAdmin puts it at the top for MySQL client tools, but mostly out of personal preference I choose to remove it from my list of clients. The problems with phpMyAdmin are pretty slim, and if you don’t mind a web-based MySQL client, then you probably are already using this, or will at least find it suitable. So far I’m pretty convinced that a web-based MySQL management tool is just not something that will ever jive with me, I yearn for the snappier and cleaner UI of a desktop application when it comes to managing my MySQL databases. Unfortunately most of those bring in their own set of problems as seen in MySQL Query Browser Review and soon to come with reviews of YourSQL and CocoaMySQL.

Technorati Tags: , , , , ,

MySQL Query Browser Review

Wednesday, May 17th, 2006

I’ve decided to do a series of reviews, or maybe a series, on various MySQL client software, primary focus will be on Mac OS X since that’s my platform of choice. I have been in search of a decent MySQL desktop client, since phpMyAdmin does not fit the bill for me, not to mention at work we don’t use it per security concerns.

In comes MySQL Query Browser with probably the better of the UI designs out of the clients I’ve tried, particularly on Mac OS X with a pretty clean design. With tabbed query windows, syntax highlighting, safe row edits, and more Query Browser is a pretty decent regular use MySQL client. What it lacks really is the ability to administer users directly instead of relying on it’s sister application, MySQL Administrator. Also the inability to export an sql dump of a database is also a bit of a let down, another feature of MySQL Administrator.

MySQL Query Browser serves as an excellent tool to edit table structure and test queries. The query window looks like this and support multiple tabs which is very beneficial:


MySQL Query Browser Main Query Window

Table structure editing isn’t bad either, although better on some of the platforms like Windows where more auto-complete works. A sample of a table being edited:


MySQL Query Browser Table Editing Window

Here is a sum up of what’s good and bad about MySQL Query Browser:

Pros:

  • Clean UI
  • Decent table editing
  • Pretty fast
  • Handles large amounts of data in view relatively well
  • Row editing safe due to having to click edit (this could be a con for some, but I feel less paranoid with it)
  • Built-in help
  • Query bookmarking (save a cool query for later)
  • Query History (go back & forth through it, see cons for a problem with this)
  • Simple copy SQL to clipboard feature when clicking a table

Cons:

  • Can crash frequently, possibly less on Windows version
  • Mac OS X version doesn’t have inline auto-complete for column types (windows one does)
  • Foreign key handling is flaky due to crappy errors from MySQL itself (not getting column types EXACTLY matching)
  • Lack of SQL dump/export (due to it being featured in MySQL Administrator as ‘backup’)
  • Editing rows relies on presence of a primary key, custom queries often data can’t be edited.
  • Query history is cool but it executes every time you hit back or next, which sucks for any UPDATE or DELETE queries
  • Crashes when your a little to crazy with clicking sometimes (Mac version at least)
  • Preferences and saved connections is immensely slow (when accessing to edit or save changes)
  • No way to organize connections if you have a ton of them (I’d like that at least…. NO client has that though)

So there is quite a few cons for this, but so far they haven’t out weighed the cons of other clients to make me not wanna use it. I often use it pretty briefly so my experience with it’s problems is usually short-term. Some of the other candidates for consideration and review next are YourSQL, CocoaMySQL, and Navicat. Any other suggestions (taking Mac OS X software and possibly linux software suggestions only) feel free to comment.

Technorati Tags: , , , ,

MySQL Workbench on Windows

Wednesday, May 10th, 2006

So I managed to try out MySQL Workbench on Windows to see if maybe that version runs better. Staying true to the drastically different UI for each OS that every MySQL.com tool is like, this one was much different on Windows but seemed to not break so easily. Linux version I even tried but that wouldn’t even start on ubuntu. A promising tool but definitely still beta, but maybe the least beta on windows at the moment.

Here’s a simple shot of the windows version:

New Software: MySQL Workbench

Tuesday, May 9th, 2006

Apparently MySQL AB turned out a new tool, or at least new to me, which lets you design data structure in a visual manner, called MySQL Workbench. I was pointed to it yesterday by a friend and never had seen it on mysql.com before. This is a tool similar to software like DBDesigner 4, SQL Editor for OS X, and EOModeler from WebObjects. You create tables and you can link them together via relations using a relation ship line tool, basically creating an ERD that you can output to an SQL file or possibly a database. Now this is kinda cool except that this particular piece of software is beta, and I think when it comes to the MySQL AB tools, this means almost unusable. I must say I’ve liked most of the actual UI design in their tools, and Workbench seems pretty decent too, just falls short at this moment with the beta due to bugs that halt the successful usage of this tool.

MySQL Workbench is available for linux, Windows and Mac OS X and I have only tried the Mac OS X version which very likely might be the only one with the crippling bugs I ran across. I basically couldn’t use the relationship features for generating foreign keys due to some bugs that didn’t let me set foreign keys, let alone remove the lines they generate.

It definitely is a promising tool that could prove to be useful once it’s smoothed out and the bugs that limit it at least on OS X are gone. I’ll be watching it, but I also haven’t had too much use for a tool like this yet, just more want to find a use for one, and maybe once this works better I might find it beneficial.

I’ll provide an update of how it is if the linux version is more usable.

Here’s a simple shot of it:

Google Calendar, sexy

Thursday, April 13th, 2006

I just played with “Google Calendar”:http://calendar.google.com and I like it quite a bit. It’s simple to add events like in “Apple’s iCal”:http://www.apple.com/macosx/features/ical/ and has some pretty cool sharing and invitation features. You can subscribe via the iCalendar(ics) standard too, read-only it looks like. It would be awesome if you could edit & view from a calendar app like iCal though. But so far impression is very good.