Rebecca Murphey – host of the yayquery podcast‘ – will be presenting “Retooling Your Workflow (Or: Git + Tickets = Happiness)” at indieconf. Register today to come learn from Rebecca and the other speakers about taking your freelancing business to the next level.
Is your project scalable?
August 17th, 2010 by mgkimsal 1 comment »I was talking with a friend today about his project. He’s been brought in to a project where the dev environment is pretty tightly couple with physical machines, there’s no good repeatable build process or docs on how to make things work, and many unwritten assumptions that he only finds out after trial and (much) error.
It struck me then (and possibly in the past) that the entire way that project is set up is not *scalable*. Scalability is a big buzzword, and it often focuses on performance. While faster performance is generally a good goal, it’s often not the only requirement on a project. In the case above, a new developer coming in may spend *weeks* trying to get things working which should only take hours. And the process of getting him up to speed is not a documented, repeatable process either. So when he leaves, and they bring in someone else, they’ll go through the same process all over again, probably not even realizing there’s a problem.
What steps do you take to ensure your project (or perhaps your project team) is itself scalable with respect to the human resources it requires?
Web freelancer conference
July 21st, 2010 by mgkimsal 1 comment »indieconf – the conference for independent web professionals – is now open for registation.
What is indieconf? It’s a conference that brings together the topics that affect freelance web people with experts who’ve been there and done that. I’ve attended a number of tech/web conferences over the past 12 years or so, and while they’ve all been ‘good’, there’s usually very little in the way of information that helps me in the business side of my work. As an independent, there’s questions about bookkeeping, outsourcing, legal issues, time management, billing, sales and marketing, and more that don’t typically get addressed at the typical tech conference. And at ‘small business’ events (conferences, networking meetings, etc), there tend to be very few ‘web geeks’ who speak my own language and understand the particular challenges that I face.
So, from that quandary, indieconf was born.
I’ve been contemplating this for a while, focused the idea some, and have been working for the past 6 weeks organizing a core set of speakers/sessions, location, paperwork, and more ‘stuff’ that goes on with a conference. I’m not even half done, but have been having a great time so far. I think we’ve got a pretty solid line up of speakers and sessions so far, although we’ve got room for a few more (planning between 15 and 18, and we’ve got about 9 or 10 nailed down).
One of the things I’ve tried to do with this is to get speakers from outside the Raleigh area. Right now we’ve got speakers from California, Texas and Pennsylvania as well as the Raleigh area and the Carolina coast. Even people who’ve been to many local or regional events in the NC area likely won’t have crossed paths with all of these speakers, which I hope is seen as a good thing (I think it is!).
So whether you’re a PHP guru just starting out freelancing, a PSD master who’s been at it for years, or someone just considering getting in to the world of freelance web work, I think indieconf will have something for you. With that said, what are some other types of sessions/info you’d like to get out of a conference like this? I’ve got some more topics planned based on early feedback from people, and would like to take on a bit more before making more decisions.
I look forward to seeing you in Raleigh this November at indieconf!
cancelling landline
July 21st, 2010 by mgkimsal 2 comments »I’ve had landline phone service all my life. I’ve had cell phones for a long time, and Vonage for about 6 years. Even with Vonage and cell pones, I’d never brought myself to get rid of the landline. Rationalizing it was not too hard – we occasionally get power outages as well as internet outages, so having a stable line would be at least moderately useful for these minor occasions. However, the monthly bill got landline service seemed to go up continually each month, regardless of how little we used it each month.
A few months ago the bill started going over $50/month, and this is for *nearly* no bells and whistles – no voicemail, no ‘warranty’ on the line. Wait, I tell a lie – we had an ‘international calling plan’ package, so that when we called my wife’s family overseas it would only cost 10 cents per minute instead of $1.25 (approx). That said, we still rarely used the thing. The base rate was a bit over $30/month, and taxes/fees – even if we made no calls at all, added another $16/month – > 50% tax/fee rate, basically. So keeping a solid phone connection to the house was $46/month before *using* the stupid thing.
A few years back the taxes seemed lower – I would swear total fees before making any calls was below $40 back in 2006. I may fish out an old bill and compare if I can find one. In any event, when bills for minimal usage started creeping over $50, I’d had enough. We already have a Vonage line, so I looked to port over the existing number (which many of my wife’s customers have used for years) to our Vonage box, and – great! – it was possible. The process took almost two weeks, and the service was working before we were actually notified by email that it was working, but it was fairly seamless all in all.
So, now I’ve come kicking and screaming in to the ‘no land line’ age, and it feels a bit odd. What was funny, though, is when I called to cancel service. The *2nd* option on the provider’s phone tree was ‘If you’re calling to cancel your service, press 2′. *2*! They must be losing customers right and left. While I’m paying some taxes via Vonage, I suspect it’s only a few years before we start seeing punishing taxes applied to VOIP systems to make up for lost revenue from land lines. If the govt was recouping $192/year from me via landlines, and might only be collecting half that from Vonage tax collection.
Scratch that – nope. They’re still collecting around $16/month from me in taxes already. My minimum monthly Vonage bill is now $42.94. Hrmm…. So… I’ve sort of traded one price point for another. And actually, there’s another $5 on top of that because we have an incoming virtual number from the UK. So… $47.93 minimum. About the same as the CenturyLink line we had before. So why cancel?
Vonage is giving us much more. Unlimited calling, which many US-based VOIP providers also offer, but *every single ad* I hear/see from TWC, CenturyLink, etc – all focused on ‘unlimited calling in the US!’. I couldn’t care less, as half my family is overseas – UK and Australia – as are many of my wife’s customers. Vonage gives free calling to Australia and most of Europe in that $24.99. We pay $5 month for a UK line which rings in to us for that flat $5, and allows most of her UK customers to call for the price of a local call in the UK. Voicemail calls transcribed and sent to email for free. And… a web interface to manage it all. CenturyLink and other traditional landline monopolies have a long way to go to catch up to the value provided by Vonage. If we got a Vonage program *just* for the amount of calls we make in the US, and didn’t have international needs, we’d at least $20 off that $47, so, we’d probably be paying $25/month. And the ability to physically take the phone number (via the physical box) with you around wherever you travel is pretty nice (though I’ve only done it once).
Before Vonage, even using landline ‘calling plans’ to get international calls down to a few cents per minute, our bills were easily over $100/month, sometimes $150. Now with Vonage, two lines, a third incoming number, and *more* calling than we used to do, $55/month is about average. *Huge* savings, and more convenience. Can’t ask for much more, can you?
That’s my rant. Glad I did those numbers. It wasn’t specifically the $50/month that was necessarily upsetting, but given how little value we were getting for that $50, that was the breaking point.
Session steganography idea
July 1st, 2010 by mgkimsal 5 comments »Quick idea I had the other day. Session ID tokens are typically short strings of seemingly random characters. While they don’t typically change all that much during a session, it’s good practice to change the session ID every so often to help prevent against security attacks. If someone was to periodically change the session ID, and hide a short message in the ID values such that, when strung together, the message could be extracted, would that be a useful way of transmitting data in a hidden manner? I’m not sure of how much info you could reasonably hide in a series of short session IDs, but it seems like this would be possible.
twilioKit php starter kit
June 19th, 2010 by mgkimsal 2 comments »I’ve adapted my ZFKit for an upcoming Twilio presentation (codestock next weekend!) and created a new project on github for it under the project name ‘twiliokit‘. ZFKit was updated a little bit (a basic menu/navigation was added with Zend_Navigation, some example unit tests added) and used as the basis for this.
You can see this in action if you want to play around with it a bit.

I’ve modified the twilio REST client available from Twilio.com. While functional, it wasn’t the easiest thing to use, and I’ve added a couple helper methods which may make things a bit easier for people.
I’ve got two examples so far – one is a basic ‘send SMS message to a phone’ controller, which uses my new helper methods in the Twilio_Rest_Client library. The second is a small guessing game which demonstrates making use of ZF sessions. You enter a phone number (and name!) to call, and the app will call up and ask the person to add two numbers together (“hello dave. What is 4 + 2?”) Based on your answer provided, you’re told whether you were correct or not, then offered a chance to play again.
I should have a few more examples before next weekend, but there’s actually quite a bit going on, between the ZF code and the Twilio code. I’m working on something (in the code now) which will log all the call activity, and I’m working on it logging everything to a Doctrine table.
When you first use twiliokit, you’ll need to enter the ‘scripts’ directory and run the ./run script. This will create the necessary ‘tcall’ table to store the info. This is building from a schema.yml file to a local sqlite file. You will probably need to chmod 777 the dev.db sqlite file, depending on your system’s permissions.
Oh, and there are a couple unit tests in place in the ./tests directory (though certainly not comprehensive).
This is definitely a work in progress, but I wanted to share it on github to allow people to use it and make any changes they need and be able to easily send those changes back to me. I was on the fence about making this just a working branch on the zfkit project, but it felt like that might get too confusing.
Let me know what you think!
Zend Framework starter kit – zfkit.com
June 9th, 2010 by mgkimsal 1 comment »So.. I’ve finally gotten around to publishing the first draft of my ZF starter kit.
More will be at zfkit.com in the future – right now it just links over to the github project home. Feel free to fork it and send me pull requests. There’s a load of things I’d like to do to/with it, including a default basic authentication and user mgt system, a basic forms generator, some menu stuff on the side, and some other small stuff.
It’s got Doctrine built-in, and ready to go with a sample book/author object set, although no sample *data* yet, nor any examples of how to use the code specifically. Maybe I’ll add some of that soon.
Curious to see what, if anything, people are interested in seeing this do or can contribute back.
Enjoy!
Silverlight on Android?
June 7th, 2010 by mgkimsal 3 comments »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.
How do you say “do not buy from me”?
May 31st, 2010 by mgkimsal 4 comments »My wife occasionally gets orders from people for her miniature foods but they somtimes want to split up payments.
We will get emails from people saying things like “I’ve not worked in 3 months, money is really tight, can you split up the payments?” Reread that – this is a person wanting to buy *dollhouse food* of all things – about the furthest thing from a necessity as you’ll find out there (up there with telephones shaped like Mary Worth). In my view, that’s what a credit card is for, yet I imagine many people may be struggling with lowered credit limits, missed payments, etc. But really, at the end of the day, it shouldn’t be our problem.
Is it right to take an “I know what’s best for you” attitude and refuse to sell to someone who really can not afford these luxuries/toys? I realize some of you reading might think this is someone trying to scam us, and I have thought that in the past, but after having lived in this world for many years, I can spot a scammer, and it’s not people like this (just trust me on this). Getting preachy on someone about how to handle their money isn’t really good business, but might be better for everyone involved over the long haul, no?
Do any of you face this with your businesses?
Is email only for ‘old’ people?
May 12th, 2010 by mgkimsal 3 comments »I read commentary *yet again* that email is only for ‘old’ people (from this page, tho it was only in the comments I think).
I’ve got younger family members, and I think they do tend to communicate mostly via text messaging, facebook, myspace and the more advanced ones, twitter. The ‘old man’ in me thinks the following:
Text messaging is insanely expensive (sure, yeah, fine, I’ll pay *yet another monthly fee* for the ‘convenience’ of not paying 45 cents when someone spams me with 110 bytes of cellular data – right).
Facebook, twitter, myspace, etc – all are the walled gardens of today. Twitter is probably the least walled, but I still need to have a reciprocal relationship with someone to send them a direct message – something private, not meant for public consumption.
The new mantra today seems to be ‘there is no privacy – get over it’, yet I don’t think advocates of ‘no email’ really understand just how large that implication is. Tying your communication vehicle to your public identity outlet is forcing yourself to play by those rules only.
I’d discussed with friends a few years ago the ubiquitous “mybizname@aol.com” practice we’d seen at the start of the web boom. We’d all criticized that, saying how shortsighted it was to tie yourself to AOL for your identity. But now some of them proudly have linkedin, twitter, facebook, foursquare and many other logos on their profile pages, and this seems to be the *only* way to get ahold of some people – no concept of private email at all. My view was that putting your persona in the hands of another company is bad, and I think their view was more focused on the untrendiness of AOL at the time.
Yes, I do maintain presences on the major social media networks, but it’s not the primary way (or even necessarily a *good* way) to get ahold of me. Need to contact me? Phone or email are still the best. And while I use gmail for many things, I still do quite a bit with my michael@kimsal.com email and will continue to do so for as long as email is around.
I think a degree of serendipity is lost when we shut ourselves off in our very closed social networks. I totally ‘get’ the spam issue for people – inundated with hundreds or more spams per day is wearing, timewise and mentally. But by closing ourselves off, we lose more chances for serendipitous connections.
8-10 years ago it was pretty easy to find someone’s blog and reach out to them via email, and perhaps get a response. Now often the only way to connect is to leave public comments. Sorry, I don’t want to live that much of my life in public. And this trend of everything in public has had a chilling effect on my ability to connect with others. I suspect it’s had the same effect on that of many other people, and possibly in ways younger people aren’t even aware of.
I don’t think I’m doing a very good job of organizing my thoughts on this, and I suspect I may be viewed as ‘just some old dude ranting about the good old days’. Hopefully there’s a bit more takeaway than that.
