Archive for the ‘Development’ category

Silverlight on Android?

June 7th, 2010

I just read a quick blurb about Android’s inventor suggesting they’d welcome Silverlight on the Android.  A quick search around showed there was some activity on this topic in March, but it seems to have died off.  Is this actually coming?  It’d be interesting to see if MS could pull it off and make it run in the JVM.  That would have larger implications for non-Android devices (better support under Linux, perhaps?) certainly, but also be a strategic threat against Flash.

Right now “flash on the iphone” is still (for some reason) some big meme in the webosphere.  Well, I get the reasons, and I think it’s more to do with Jobs’ aggressive stance than it is people actually missing the tech in most casses.  Were Silverlight to be available on Android devices, there would be a much stronger case for people to consider developing in Silverlight in the first place.  As cool as SL is from a pure geek standpoint, there’s still little reason for most people to learn it unless you’re targetting a pure MS-deployment environment.  Yes, there’s a Mac plugin, but it’s just something we rarely see outside of MS shops writing for their own, or basically not caring about web-standards and cross-platform accessibility all that much (any modern SL app will automatically preclude Linux and non-Intel Macs).

So, will MS join forces with Google (metaphorically speaking) to do battle for mobile-dev mindshare against Apple?  Having a cross-device RIA stack won’t do the trick on its own, but certainly does add a bit more complexity to the mix.

The independent web developer blog

April 28th, 2010

I’m launching a new blog over at http://www.webdevindie.com to focus more of my ‘web development’ topics over there.  I’ll likely still post some here, but if you want more of my web-related stuff, I suggest that you subscribe to webdevindie.com.  Yes, it’s the same theme as this blog for now, so it might be slightly confusing at first, but it is different.  :)

UserFly Usability Checking via Screen Recording

March 9th, 2010

UserFlyI recently found UserFly.com, a service which will record videos of the visitors to your site, allowing you to play them back and watch where users go (and how they move their mouse around on the screen).

I was flabbergasted at how easy this was to use – I tried the free version and had recordings going in 2 minutes. It was that easy. It has to be seen to be believed.

As a techie, I’d tried to build something similar 4 years ago. Owing to my own limitations, as well as the much more fractured browser landscape 4 years ago, I never got this working to the level that I liked. Having attempted just a small portion of what userfly is doing, I can truly appreciate the engineering that went in to this service.

If you’re interested in testing it out, please follow my referral link (yes, it’s an affiliate link). They offer a free version to get going, and paid versions start at $25/month $10/month. The $50/month plan would be what I’d recommend if you have any ecommerce or security, as it will handle SSL pages. But the free or $25/month packages might be fine for basic sites.

Who I use for domain name registrations

January 21st, 2010

I get asked this on a fairly regular basis, often by people new to the domain and hosting scene.  I’ve got a lot of domains at GoDaddy that I’ve purchased over the years, but for most new domain purchases I’ve found omnis.com, and I’ve been very happy with them so far (just over a year).  (yes, that’s an affiliate link, so I’ll make a bit o’ cash if you click that and purchase something from them).

I don’t recommend their hosting plan, nor godaddy’s, nor anyone else’s for that matter.  I’ve managed my own dedicated servers for 10 years, and would have a hard time recommending any shared hosting plan for anyone, mostly because of the restrictions of freedoms I’ve found.  Many people may not need it, but I do, so I can’t specifically tell you to use omnis.com for domain *hosting*.  However, purchasing domains through them and pointing the name servers anywhere else (which they let you do easily) is fine (and what I do).  To be fair, I’ve not tried their hosting plan, so I can’t comment on it, which is why I don’t recommend it.

Why do I like omnis?  Price.  GoDaddy has lower initial pricing, assuming you can find a coupon code (and they’re all over the place if you look for them).  This can often get a .com domain name down to $7 from GoDaddy for the initial registration period.  Yes, if you buy 5 years up front, you’ll get the $7 price for 5 years.  However, most people don’t do that (I don’t – I try too many domain names every year).  So, purchasing for one year at GoDaddy is $7 (with coupon) and $8.95 from omnis.com.  Almost a $2 difference!  However, come renewal time, GoDaddy has steadily gone *up* for me year after year, and omnis.com hasn’t (so far).  Renewing that $7 .com for me at GoDaddy jumps to $10.69 plus some ICANN fee.  So, for 2 years, I’m at almost $18 with GoDaddy, and pretty much the same at omnis.com.  Following year, I’ll be saving money.

Is is worth it to try to save money on a 2-3 year time horizon?  Strictly by the numbers, no.  However, I’ve felt GoDaddy has become a bait/switch operation with respect to the higher domain name renewal fees.  Coupons or special deals might help in some cases, but I’d prefer to give my domain business to someone who doesn’t bait/switch or need to rely on massive promotions.  Yes, omnis are smaller, and yes, I might have problems with them at some point, but I haven’t in over a year, I don’t get upsold a huge amount of junk trying to check out, and the support I’ve had for the few questions I’ve sent in has been reasonable (typically answered by a human via email within a few hours max).

So, if you’re looking to help support a smaller domain registrar with decent service and decent prices, give omnis.com a spin.

Magazines targeting JRuby and Jython

January 17th, 2010

Are you interested?  I’m looking at bringing the same style product that we’ve been delivering to the Groovy community to the JRuby and Jython communities, respectively.  If there’s enough interest, we’ll move forward.  Care to register interest?  Sign up at http://jrubymag.com and/or http://jythonmag.com and let me know what you’d like to see covered.

Next magazine topic survey – winner announced

December 23rd, 2009

A few weeks ago, I posted a survey asking for input on the next magazine topic for Web Dev Publishing to pursue.  The results were interesting, but unfortunately the results were not definitive, and I’m left with the same quandry as before – which topic to choose.

The winner of the survey, selected at random, was Mark McDonnell.  Congrats Mark, I’ll be sending your Amazon Gift Card over today.

The top vote getters were (in no particular order)

  • MySQL
  • NoSQL
  • JVM Languages (jruby, jython, scala, clojure, etc)
  • Zend Framework
  • Database technologies

The votes were pretty evenly split between all of these topics, which leaves me with no clear direction as to which, if any, of these topics would make sense to pursue (from a demand standpoint).   There already was a MySQL PDF magazine, which has transitioned in to a “open source database magazine”, covering more technologies than just MySQL.  NoSQL, while interesting, has been criticized as just a ‘flavor of the month’ (though the interest shown in this survey was significant).  Zend Framework and JVM Languages are the two that seem the most promising.

Do you have any thoughts on this?

Learning new languages harmful?

December 22nd, 2009

After having spent much time with Groovy/Java, and a bit with Ruby and a bit with C#, I have a newer perspective on learning new programming languages.  Much of my thoughts are summed up by this post from Gustavo Duartes.  I liked his choice of words at the top – “language dabbling” – which largely describes my C# and Ruby experience.  I’ve done a little bit in them – some paid in C#, some not – but the bulk of my work is in PHP, with a small but growing bit in Grails.

It’s interesting to note his acceptance of “more than one”, but focusing on the “minimal required set”.  We tend to think of languages as Java,C#, Python, etc., but competent web developers need to have a handle on SQL and JavaScript as well.  Many also get into Flash/Flex/Silverlight too, and while CSS isn’t a *language* specifically, it’s something most web developers should be acquainted with.  So, regardless of your serverside language of choice, there’s going to be 2-4 other technologies you need to be at least competent, if not proficient, with.  This may be more the realm of small shop and independent developers – people working on larger teams or in companies with divided responsibilities may be able to get away without knowing any SQL or JavaScript, for example.

One of Gustavo’s points was that you lose momentum on your main language when you start dabbling with others.  There may be a point there, but I suspect some people end up looking at other languages when they reach a plateau in one.  That was certainly my point I reached with PHP.  Having used it since early 1996, there’s only so much more I feel I can do with it.  Yes, the language is evolving slowly, and I’m not keeping up with the ‘best practices’ of namespacing and such in 5.3, and I could probably architect my apps somewhat more strictly using some of the bigger frameworks out there.  However, one of the things you end up learning when you look at other languages is where some of the defects are in your primary language.  You may start to see the new ‘best practices’ as work-arounds in language deficiencies.

It’s easy to point at PHP and talk about how “it sucks” and all that, but I’ve had experiences with some friends who’ve moved from Java over to PHP.  While this was a somewhat unwelcome move at first, given PHP’s reputation amongst the ‘enterprise crowd’, at least one of my friends is really enjoying being able to be much more productive – more functionality in fewer lines of code – and rethinking some of his approaches to web development.  Moving from any statically typed language to a dynamic one is certainly a shift for people to make (and the reverse movement is true as well!), and rethinking those problems we’ve taken for granted can be a real eye-opener.

In the short term, yes, it’s a productivity loss, as Gustavo points out.  In the longer term, it can really provide you with many more tools in your toolkit for attacking new problems.

One caveat I’ve noticed to this is the old saying “choose the right tool for the job.”.  Great in spirit, but my experiences have borne out that rarely is the definition of “right” able to be agreed on.  ”Right” for who?  The DBA?  The sysadmin?  The developers?  I had a project I’d recently prototyped in Grails (after an initial first pass prototype in PHP 6 months earlier).  The Grails environment allowed for much more rapid prototyping and modeling of data, relationships, screens, and so forth.  However, when it came time to accept it, I was told we could *only* build the app on a traditional LAMP stack (I was looking forward to using PostgreSQL on this project as well).  Why?  Because the limited system administration staff didn’t have the time to learn new skills to manage the new technology choices.

While initially I was bummed out, I can understand the decision making process.  I was able to take the db tables from Grails and wrap another PHP ORM layer around them so I didn’t lose all my work, but it certainly put to rest the maxim “right tool for the job.”  Who gets to decide?

So, even if you learn new languages and technology, you might not always be able to use the most appropriate tool from a pure technology/productivity standpoint.  And sometimes knowing that there are better options out there that you *can’t* use for various reasons adds a level of frustration to the mix that you wouldn’t have.  Perhaps we should all stick to just knowing one language and one language only, right?  :)

Cloud computing – still a bit too pricey for the average project

December 22nd, 2009

I wrote this to Brian Hitney after we’d briefly touched on cloud computing in my podcast with him last week.  I thought I’d post it here for any reaction from the rest of the internet…


Another point on the economics that isn’t brought up is the cost of data transfer and data storage in the cloud, which is often more than you’d pay for ‘normal’ equivalents.

I’ve got a server that I lease and pay $84/month for.  Included in that I get 750 gig of transfer.

With azure, 12 cents per compute hour for 24 hours x 30 days = $86 - about the same base rate.  But… let’s say I’m pushing out between 150 and 200 gig of bandwidth per month.  200 gig at .15 cents extra is $30.  Factoring in I store about 40 gig of data on that server, that’s another $6.  To replicate my setup on Azure (or Amazon) would cost me about $38/month more, which is a 40% premium over what I can get in the ‘non-cloud’ marketplace. As my data needs scale up, the differential gets bigger.  EC2 pricing is roughly equivalent for storage and xfer, but the base computer rate is cheaper for linux images than for windows images.

There’s a big play to push ‘cloud’, and given the markup, I can see why.  The hardware is commodity, and is essentially a one-off investment, but the data xfer is the lifeblood, and I’m actually a bit fearful of putting so much reliance in the hands of just a few monolithic companies who will then charge us a premium to move our own data around.

If I had a huge amount of number crunching to do, without much data storage or xfer needs, current ‘cloud’ offerings make sense.  And for potential adjunct service in a pinch, or for testing.  But as a long term strategy investment, the pricing needs to change and/or there needs to be more value in the mix for my taste.

Progress on six week test – looking for authors

September 18th, 2009

As a quick followup to my previous post (http://michaelkimsal.com/blog/six-week-test-followup-custom-business-cards/) I wanted to drop a quick update here.  Six weeks isn’t too long if it’s your only activity.  Trying to fit in a six week project in the midst of other projects and deadlines is hard, but you already knew that!.  I’m 4.5 weeks in, and have a basic site template up, and am working on the info gathering portion (nearly done, but can be improved) and then paypal and google checkout integration.  Given my current workload, hitting Sept 28 is still possible, but it’ll be tight!

re: timing – the designer I worked with had me on somewhat lower priority than I’d hoped, which ate up a lot of the 4.5 weeks – I was hoping to be where I’m at now about 1.5 weeks ago.  However, I did not convey any sense of urgency to him, nor give him a deadline, so that rests entirely with me.  I satisfied with the first round of design that we did, so I can’t complain (about anyone except me, anyway!)  Lesson learned: have hard deadlines in place with people you work with :)

If you’d like to be involved in testing or giving feedback, give me a shout or leave contact information.  I’m specifically looking for feedback and testing from self-published authors (of any genre).

Web Development Job Hunter classes (raleigh)

September 10th, 2009

I’ve been working with a couple local people on developing a short term plan for them to get in to or move around in the web development job space, and I was wondering if there’s a need for something perhaps sightly more formal in the Raleigh area.  Here’s my initial sketch…

Weekly classes (probably Saturday morning) 2 hours per class for 6-8 weeks

Class would consist of

  • reviewing web development options (technologies, focus – front end or back end, etc)
  • deciding on a particular technology to focus on
  • developing a short term game plan for achieving certain tasks – small projects to connect to a database, do flash animation, handle user authentication, etc.
  • work with participants to keep them on schedule, answering questions that may come up
  • have in speakers from local hiring companies to do presentations about their work environments and what they’re looking for in entry-level positions
  • have in guest presenters from the area who specialize in one tech (.net, ruby, flash, etc) to answer specific questions
  • general support and motivation when learning the new technology.

For some people getting in to new tech can be rather overwhelming because there’s so many choices, and often conflicting advice about what’s “best” to get in to.  What I’ve found is that there’s isn’t one “best” that’s right for everyone.  Learning PHP just because that’s where the jobs are, but you hate it – that’s just pointless.

Is there a need for something like this in the Raleigh area?  Would you be interested in participating?