When I first started consulting, I had everything tied to my name. My company name was Treb Studios, my email was email@example.com, and my whole business was tied to me.
Tonight, I'm going to a party for local entrepreneurs.
I have really been enjoying listening to Darknet Diaries lately. It’s a Podcast about hacks and software security vulnerabilities.
My wife and I are hard core “type-a” people. I mean, so planned that we send each other calendar invites for date night (don’t judge what we consider romantic ;)).
Many of you might not know this, but my family and I live in a converted schoolbus.
The other day, I was having a conversation over Slack with my development team. They were working on a client project (and doing a killer job), and there was a particular UX pattern that seemed very unintuitive to me. This app was designed by the client, so there was little the dev team could do beyond making suggestions, so they went ahead and implemented it per the spec.
My little brother was recently in town for the holidays. He’s about to graduate from college with a CS degree, so naturally we talked about searching for a job.
As developers, we spend so much time perfecting our craft. We are always on the hunt for hacks, tips, and tweaks.
In our house, we often joke that “the diet starts Monday”. Usually, this is in response to some conclusion that we are not currently on the healthiest path.
It’s often much easier to have a sense of gratitude when things are going well. As humans, we are prone to focusing on the one bad thing that’s going wrong rather than the multitude of good things going right. This traces way back to a time where we needed this sense to stay away from danger.
“Just hack a quick proof of concept, we’ll rebuild it when we get more funding.” These are some words I often hear from clients who have minimal budgets.
I always receive cold emails. Some of them are personalized, and some of them are robotic. Sometimes, I’ll ignore and sometimes I’ll respond with something snarky (this is my spiritual gift). I get it. These are just part of the internet.
It's been around 3 weeks since I started blogging every weekday. This experience has been nothing short of delightful.
I was recently listening to Episode 344- 10 Strategies To Be Happier Through Gratitude on the Tim Ferris Show. Oddly enough, I much prefer episodes where Tim is absent. I do love him, but sometimes feels he steals the conversation.
I had the amazing opportunity today to hit File -> New Project today. There are few feelings in the world as great as the optimism that comes from starting a brand new project.
I have been building software for clients for over a decade now and have come to one solid conclusion: deliveries suck.
I was having a conversation with my dad the other day and sharing some of my current business ideas with him. I also mentioned that I often discuss new product/business ideas in public with other people.
When I was in high school, I used to think computers were for nerds. I was a skater obsessed with chasing girls with no time for computers.
Rates are a weird thing and chances are, yours are too low.
People often tell me things like "it must be nice to work for yourself”, or “I'm working hard to make someone else rich".
A few years back, when the company was growing particularly quickly, I made a decision to hire my friends. Although, I had been warned by many others that this was a bad idea, I was sure that I was going to do things differently.
If you are a mobile developer in 2018, and are not consulting (at least on the side), you are missing out on a huge stream of revenue.
I have been obsessed with Seth Godin lately. I've been reading his books, listening to his podcasts, and devouring his blog posts.
Seth Godin recently discussed in an episode of the Tim Ferris Show a fear many of us have of the future. He used the example of him landing speaking gigs in which he was more apt to compromise and take gigs he didn’t particularly want on months in which no gigs were currently booked.
I just had a realization that I’m a professional dream crusher. Being in software consulting, I hear multiple pitches every single week for all sorts of different software. While it’s not necessarily my job to tell people what’s good and bad, I feel it’s my responsibility to at least give them all of the information I can.
I have always loved the C programming language. I remember being a young programmer (man that was 15 years ago) when I wrote my first C program. It seemed like absolute magic (and it still does).
Over the past few months, I have had the pleasure of working on a DApp called thisorthat.io built on the Ethereum network. It has been an absolute blast. I have had so much fun building the smart contracts as well as the React front-end interface.
tl;dr: micro.blog is pretty cool.
In 2008, I was still in college. I had just landed my first job with a small consultancy as their first iOS developer replacing their outsourced Ukrainian team. Within my first week on the job, the CEO asked me to jump on a sales call as the technical lead. This absolutely terrified me. I remember doing things like ensuring that I had a full glass of water so my throat wouldn’t get so dry (it still did). I also stumbled over my words, almost costing the team many sales. Eventually, I learned.
As developers, we hear the echo chamber on Hacker News and others shouting at us to raise our rates. We are worth it. In theory they are right, we are worth it and we should be charging an industry standard rate. However, there are some instances when it’s OK to lower your rates.
Over at Pixegon, I really try to encourage my developers to have their own side projects. Often times, employers look at side projects as competition and try to own the works that their developers produce. Some will even go as far as to include this in their employee handbooks.
Every single year since the beginning of time (at least since the beginning of this blog), I have resolved to “blog more”. And every single year, I have absolutely failed at that.
A while back, I made a flagrant comment on Twitter about how I assumed the world worked. It was something to the effect of “The internet levels the playing field, so someone without a job is without excuse”. Not shortly after I hit “Tweet”, did I receive an array of Tweets back from people I highly respected. I was immediately humbled, and it was pointed out to me that I had a severe lack of empathy.
Will you work for equity?
After you have been consulting for any amount of time, you are bound to get asked this by a client. You may find yourself struggling to decide whether or not to take some equity or just get paid to work on the project like you normally do.
Want to jump ship and be a software development consultant? This post will detail why this path is a much more fulfilling and safer path than a traditional job.
Early in my career, I worked for a software consulting agency. I was in my early 20’s and getting paid way more than I should. One day, my boss called me up and let me go without notice.
As the new year kicks off in full swing, I am reflecting on my 2015 goals and setting some new ones for 2016.
It’s late, you have been hacking all night to get the client a build. Finally, around 2:30 am, you hit submit and publish something to the client and go to bed. When you wake up in the morning, the first thing you see in your inbox is an email titled “Completely Broken!!1!”.
There is a familiar phrase that I hear all too often when a client comes to me with an existing application. It goes something like this:
During my years of mobile development, I have heard the phrase “I have an idea for an app!” hundreds, if not thousands of times. Sometimes it would be from family members, sometimes my dentist during a cleaning, and sometimes from a naked dude standing in the sauna at the gym. Everyone pitches app ideas to me.
It cannot be overstated that writing down one’s goals is critical to acheiving them. Pair that with sharing them with others who might help keep you accountable and your probabilty of achieving those goals goes way up.
One of the most common questions I get from software consultants is whether or not to accept fixed bid contracts. In this post, I’m hoping to shed some light on fixed bid vs. time and materials contracts and help you make the best decision for the project at hand.
When I first started out as an independent software developer, one of things that stressed me out the most was how to structure contracts that I sent to clients. Working for a consultancy in my previous work-life I had seen contracts before, however, I never really paid enough attention to them to know what type of content went into them.
Very frequently, I receive emails that go something like this:
I recently published a post about my first year of being an independent iPhone development consultant. The feedback from my readers was incredible, however there was one important thread on Hacker News that I wanted to address. The issues were:
Wow, I can’t believe it has already been a full year since I struck it out on my own. Last year, I published a post after my first month on doing contract iOS development. Needless to say, I have grown and learned quite a bit over the past year and I wanted to share some of those experiences.
One thing I am often asked is “Where can I find good developers/contractors/subcontractors?” While I have found talent many different ways, I wanted to share my top 5 with you.
I wrote my very first blog post back in July of 2008 when I start iCodeBlog.com. I started the blog because I saw a huge need for iOS development tutorials on the web and really wanted to help others as I progressed in my development.
Welcome Hacker News! There’s some discussion happening in the comments; but, as always, the better conversation is on the article page on Hacker News itself.
tl;dr Present yourself to potential clients as if you have already made it. Don’t be scared, the work it out there. Freelancing FTW!1!
As I mature as a developer, I try to rely on other people’s code more an more. Why build something from scratch when a solution already exists that you can fit in your project. In Pocket MUD Pro, I used 13 3rd party libraries and am using quite a bit more in the project that I’m currently working on. I figured that I would share some of the libraries that I have been using so that it might save you some time in the future.
Fix the Snooze button! I have no idea how this UI component got to Apple’s review team and they were like ”Yep, that looks beautiful! Ship it!”. If Apple changes the snooze button and slaps a 6 on iOS, I will be happy. If not, more rants to follow. Stay tuned….
Earlier today a post titled ”I Try to Up Vote Every ‘Show HN’ Post and You Should Too” made it to the top of HN. It basically talked about people posting “Show HN” posts are putting themselves out there and the least we can do is give them an up vote. Well, people are listening and as of this posting, there are currently 15 Show HN posts in the top 30. That’s incredible.
I have just updated my MUD client [Pocket MUD Pro] to be a universal library. It was surprisingly easy to add the iPad support as most of the application was comprised of UITableViews.
The GreenPois0n team has just announced Absinthe 2.0 allowing users of all iDevices (except Apple TV 3) to jailbreak iOS 5.1.1. This is especially good news for me as I can now continue development on my jailbroken app for the inPulse watch, iOS notifier.
I mentioned this on Twitter last week, so I might as well post it here to make it more official. My talk Making Your Games More Dynamic With Lua Scripting was accepted for 360iDev 2012! This will be my first official speaking engagement and I could not be more excited/nervous.
We believe that developers should have the freedom to price their games how they like, without interference from the online stores that sell the games. Why? Because it allows us to promote our games more freely, as we are doing here! We rely on the ability to promote our games for our livelihood and control over pricing is an important tool for this purpose.
This is a very well written article detailing some of the inner workings of Facebook and why its business is YOU.
For those of you who have followed my blog for a while, you know that I am a huge geek for smart watches. I had the first version of what is now the Pebble (inPulse) and even hacked a jailbroken iOS app to interface with it.
(click the post title)
A while back, my buddy seantron showed me some of his 3D games he’d been working on including this one. My initial reaction was “how the heck did he get the chopps to do that?”. While, Sean is an incredible developer with a ton of creativity, doing things like loading models, texture mapping, or even basic 3D projects are flippin hard.
OK, so the title isn’t entirely true (I have maintained quite a few blogs in my day). But, one thing is for sure, I have sucked at blogging lately. So much so, I just had to think hard about having to bold lately using markdown in the previous sentence #meta.
I am very proud to announce a brand new version of my Pocket MUD Pro application for iPhone. I have been working very hard to make a perfect MUD client that is suitable for hardcore mud players, visually impaired mud players, and casual mud players.
I used to be an Emacs guy and would battle to the death on the war between Vim and Emacs. It wasn’t until a coworker of mine sat down and really showed me just how cool/simple/powerful Vim can be. Just using Vim is a new adventure every day and has really improved my productivity. I now use it to code, blog, and even jot down quick notes.
As of OSX Lion, I have started to seriously loathe some of the build-it Mac apps (such as Mail, and iCal). While I previously had no issues with them, they now seem to be very clunky and crash quite often. Being a developer, I thought “why don’t I write an app that wraps web apps for you so you basically get “native web apps” that have icons and are launchable?”.
tl;dr; Don’t buy a Kindle Fire for your kid until they resolve the parental control issues. Wifi password protection is their current solution, and it sucks.
Recently, I was pretty humbled when a post of mine titled WordPress To Jekyll And Back Again made it to the front page of Hacker News. I was a little down on Jekyll for the reasons listed in that post and was feeling pretty good about my WordPress install.
As you may have noticed, my blog has a new (much cleaner) theme. For 2012, my blogging goals are to focus much more on content rather than flashy visuals.
From the first time I saw this effect in the Tweetie (now Twitter for iPhone), I was crazy about it. I had written my own hacks to make something close, but it was always terrible. Within the past few months, I have been using a perfect/elegant solution to this problem called SVProgressHUD.</p>
This plugin looks to be super useful for people wanting to blog about iOS apps. It even supports the affiliate urls.
This past weekend, I attended the voices that matter conference as a sponsor for a new product my team is working called MaaSive. We had an absolute blast at the conference and I learned quite a bit from all of the speakers.
Earlier this year, I jumped ship on WordPress and moved to Jekyll after reading this post on Hacker News. I wanted to be 1337! I wanted to ditch the whale that was WordPress.
This is the 3rd installment of my jailbroken iOS development series. If you haven’t already, make sure you read the following tutorials to get up to speed.
I don’t usually create “list” posts, however I wanted to share a grouping of resources I have been collecting over the past few months. As you may have noticed, I’m a bit of a Pixel Art fanatic and wanted to share with you the tutorials that helped to get me started as well as some sites offering some high quality free pixel art.
First things first. My wife and I had welcomed a new baby boy into the world on Monday so you guys are going to have to see the obligatory “dad” pics.
Wow, it’s already been 5 months since I was last blogging for #iDevBlogADay. The time has flown by!
So, this blog post might sound like a lame press release, but I actually do want to talk about a cool app some buddies of mine created. Just read it in a cheesy used car salesman voice and it will be a lot
less more enjoyable.
Welcome to the next installment of my jailbroken iOS development series. If you haven’t already done so, read my previous post to get up to speed.
This post is a continuation from my previous post found here.
Many of you may have seen my tweets or blog posts regarding my development of a native iOS interface for the inPulse Watch. I just wanted to share a bit with you about the development process and talk about my updates moving forward.
Developing for jailbroken is actually quite similar to regular iOS development with one addition. More Power! oh oh oh (said in a Tim Taylor voice (sorry for non-Americans that don’t get the reference)). With your device jailbroken, you have the ability to hook in to pretty much every class that Apple writes allowing you quite a bit of control over the iPhone’s functionality.
So, after my 6 year relationship with WordPress, I have been having some strong feelings for another (blog engine). Jekyll does everything that I want my wordpress to do.
I have just updated Smart Lockscreen Creator and am giving away 10 copies!
Perhaps this already exists, if so, please link me to it.
My latest iOS app, Smart Lockscreen Creator has just released on iPhone for $.99.
Well, I have finally decided to put my money where my mouth is when it comes to fitness and train up for a half marathon! The marathon I’m training for is the Albuquerque Half Marathon on Saturday, April 16th at 8 am (that logo is such an eyesore).
I have recently had an overwhelming number of requests for a sidebar widget that displays your recent Tweetpress photos. Well, it’s finally here! The update was actually quite trivial to make. If I had known how simple it would be, I would have made it months ago.
Imagine that you have just found the coolest app in the world and just can’t wait to tell all of your followers about it. So, you head to the admin panel of your blogging engine (hopefully WordPress) and begin to write your review. Now, you want to insert some screenshots, icons, descriptions, app store links, etc… So, what do you do? You head on over to Bing and type in google.com. Next, you search your app name and hopefully find the iTunes URL so that you can slowly grab some information about the app. #Fail
I am always very fascinated with the workspaces of others and frequently check out Lifehacker’s posts on their featured workspaces. So, for this iDevBlogADay post, I thought I would keep it short and simple with a request. I want to see (and I’m sure others do too) photos of YOUR workspaces (especially those of you with standing desks).
I seem to change my WordPress theme more often than I change my socks. I just tend to get very bored with my blog aesthetics. Not to mention, I will always find someone out there with a cooler blog theme than mine.
For this blog post, I decided to take a small break from my Twitter Client for Mac tutorial series and discuss something a little more useful 😉 . I felt that a fitness post would be most appropriate around this time of year as all of our “Geek Guts” begin expanding.
Wow, in record time (2 business days!), Apple approved the update to my iPhone app Pocket Mud. For those of you who don’t know, Pocket MUD is my FREE MUD client for the iPhone.
Because I could never make something this cool/impressive:
With the upcoming release of the Mac App Store, I can only imagine another gold rush is upon us. Clever Indie developers making money hand over fist while the store as well as developers find their identities. With that being said, I feel that there is a serious lack of interesting (maintained) Twitter clients for OSX. I say “maintained” because Tweetie for OSX is just fantastic, however Twitter said they don’t have any plans for it at this time. So, I want to provide devs with the tools to create an amazing Twitter client for the Mac that I will want to use
First off, Happy Thanksgiving to my American readers. And a happy Thursday to everyone else. I’m sitting here on Thursday morning drinking coffee and eating Sticky Buns (kind of like gooey doughnuts). It’s been a hectic week of family and travel, so please forgive me if this is not the most verbose post.
One thing I always wondered about Core Data is why the compiler would warn you if you didn’t specify the inverse relationship. After reading through Apple’s docs, they essentially say its to make your database more robust by reinforcing those relationships. Plus, you never know when you may have one thing and need to get to the other.
This article was a very interesting with some insight into the Android Market. Basically, this indie Android developer has published 6 free applications and is making more than $1,000.00 per month off of advertisements.
Here is a great article about some advice given to a 22 year old starting his life journey. These points are applicable to anyone, but found them especially applicable to software developers in general.
I have just posted an update to my plugin Tweetpress! In case you don’t know, Tweetpress is a plugin I created that allows you to post images to your WordPress blog from mobile Twitter clients instead of a 3rd party service like Twitpic. Here is what’s new in this version.
So another week has gone by and I have made quite a bit of progress, here are the additions since I last posted.
I have recently been developing an iPhone app in my free time called Calculator Creator. This application has been an idea of mine for quite some time and I finally found the time to complete it. Here is the complete description of the app.
The last calculation app you will need to buy!
With Calculator Creator, you are easily able to build your own “Calculators” as long as you know their equations. The process couldn’t be easier.
1. Name your calculator (ex Cost Per Square Foot)
2. Add the fields involved (ex Cost, Square Foot)
3. Create the equation (ex Cost/Square Foot)
4. Use the calculator whenever you like
Why purchase a unit conversion application for more, when you could have EVERY unit conversion in one clean application.
Calculator Creator also comes packed with over 20 sample calculators including:
– Unit Conversions
– Mortgage Payments Calculator
– Temperature Conversions
– Tip Calculators
– and more!
If you are reading this and want a free copy of my Calculator Creator, try using one of the promo codes below. Also, please consider leaving me an iTunes review (especially if you are getting the app for free! :))
I would love to hear suggestions for future improvements and features.
After a week of studying my butt off with OpenGL ES, I have finally started work on my game engine for my Pov’s Challenge game.
The other day, I was reading Ludum Dare and saw a very interesting post. It was a call to action for all game developers to get serious and actually put something out there. Here is a link to the post:
A while back, I wrote a post called ”Money You Might Be Missing Out On” where I discussed the Linkshare API. Well, I took it upon myself to create a simple tool that I have been using in my blog posts to quickly generate affiliate iTunes links for iPhone apps. Here is a screenshot of the app.
Ok, so maybe this is stupid, reposting your own content in multiple areas. As far as SEO goes, it may not be the best idea. However, I really love Tumblr and I really love WordPress. I can’t seem to part with either yet I don’t quite have the time for both.
So I received an internal email at work the other day about how we could SEO our company website (http://elctech.com). Here was my suggestion:
I really enjoyed this article on traits of developers.
This info graphic just about sums it up in terms of what is HTML, and why we should care. It includes browser readyness, various API support, comparison of competition, and more. Check it out.
If you are reading this post you are most likely a geek. It’s true, otherwise if you were a reader of my blog and not a geek, you would be very confused ;).
I have updated my WordPress plugin Feedburner Anywhere. In case you are unfamiliar with it, it’s a plugin that allows you to output your Feedburner subscriber count anywhere on your blog.
So WordPress 3.0 has broken Tweetpress for many people. If you are daring, willing to help, and experiencing issues with Tweetpress, please download the 3.0 test build of Tweetpress and install it on your WordPress blog.
Quite possibly the most useful macro you will ever use.
I was recently working on a script that imports from a custom blogging platform into WordPress and had some need to programmatically add post keywords.
So this one should seem pretty obvious, but it wasn’t apparent to me at first. It was only after digging through the wp-db.php file that I discovered how to enable error reporting.
Watching this video makes me appreciate the fact that I work from home.
Recently TopCoder.com posted a list of algorithm tutorials from some of their “top coders”.
When in XCode on a MacBook Pro, doing a 3-finger swipe up will switch between the .h and .m files.
To some, this should seem a bit obvious and if I am insulting your intelligence by discussing it, I am sorry. But, one of the main reasons I want to discuss this topic is, I was asked this question in a job interview for Lockheed Martin.
So, I though I’d start this series called Programming Tip Of The Day to write about useful things I come across in programming. Both to educate my readers and as a personal archive of ideas and tips.
While mashing the keyboard (as I often do when debuggin poorly written outsourced code), I stumbled upon a very useful OSX hotkey.
First learn computer science and all the theory. Next develop a programming style. Then forget all that and just hack.
George Carrette .
With the explosion of Twitter and such services, the need to have long URLs shortened has drastically increased. Naturally, many services to shorten URLs have sprung up as well.
Object-oriented programming is an exceptionally bad idea which could only have originated in California.
The culture of Digg is generally very liberal (to say the least). That is why I was very surprised to find one of the top stories of the day entitled ”Was Jesus A Real Person?”. Obviously, the comments section of the article was full of people arguing about the matter.
For many of you this is old new. But since it’s latest release, Twittelator Pro has supported TweetPress as one of the options for Photo Posting. Here are the steps to configure Twittelator Pro:
TweetPress is the WordPress plugin that gives you total control and ownership of the photos you post to Twitter, sending your traffic back to your own blog, instead of a third party site
If you are doing any Mac, iPhone, HTML5, etc… developement, you have probably had the need for an sqlite database. So, you fire up your Terminal and start manully typing commands to do CREATEs and INSERTs.
Through my travels through the internets, I have stumbled upon this amazing reference. It’s a complete set of XCode shortcut commands. Learning some of these commands has drastically improved my efficiency when developing in XCode.
This tutorial has moved! I have updated it to support Twitter’s Oauth, you can find the first tutorial in there series by clicking the link below
I have long been a fan of Ruby on Rails and even jumper on board very early on. The one thing that has held me back from using it in the majority of my projects is the fact that it’s such a pain to configure with Apache.
Ok, so I am sure you have seen this video by now, but I just had to post it because it’s flippin hilarious.
A few days ago, the popular blogging tool WordPress released a much needed update to their iPhone application. The main features included in the update were:
LOL, SlightyOverDressed.com had a post that made it to the top of DIGG today simply titled “I Hate Dane Cook”. That’s freakin hilarious.
It’s been a while, but I finally posted part 3 of the iPhone Game Programming tutorial series on iCodeblog.com. The focus of this tutorial was to create a splash page for your game that fades into your game’s main view.
So, after downloading many iPhone games and talking with a ton of iphone developers, I have a found a huge need in the community. Over the next week I will be developing a killer web application with a web service API that will be free to iPhone developers to use.
I have been downloading many different iPhone apps lately and have noticed that many of them suck.
Well, after anxiously waiting for the past 6 days (feels like forever) I have finally gotten that magical email from Apple stating that my “application is ready for sale”. The application of course referring to a game I created called Buzzword.
Just posted an app review of B1nary Game over at FreshApps. Check it out!
Well, it had taken me a while to slot in the time, but I finally finished part 2 of the iPhone Game Programming series iTennis on iCodeBlog.com . The game is shaping up to be pretty cool and I am really enjoying teaching about game programming.
If you have ever had your own blog, you may have at one point been faced with a question. How often should I write a blog post and how long should each post be?
The purpose of this blog will be primarily to share my programming knowledge through coding tutorials.
I have just submitted an iPhone app that I have been developing in my free time. The app is called Buzzword. It’s basically a game similar to the game catchphrase. So wherever you go, you and your friends can bust out a game of Buzzword…
With the growing popularity of both Twitter and Facebook, one could obviously see a need to link them together. Whether you primarily use Twitter or Facebook, this tutorial will show you step by step, how to update your Facebook status by posting to your Twitter account.