About

We are a full-stack web development shop focusing on rapid prototyping. We can help you get a first version of your idea out quickly help you grow as the idea matures.

Contact

Randy Schmidt

Recent News

» Read Our Blog

Fight Entropy! Keep Moving Forward!

July 26, 2010

I don’t know about you, but I encounter a lot of distractions throughout the day and it can be hard to figure out WTF you were really trying to get done today. Steven Bristol says it pretty well:

@stevenbristol.

Like Steve, I feel like I am constantly fighting entropy. I don’t think there is any way you can get rid of all the distractions in the day, but I do think you can make it easier to get back to being focused.

Let me give you a little background about my problem. I primarily work as a freelance web developer on client work and I also have a couple products, Nerd Merit Badges and Lose It or Lose It. Each of the projects have things that need to get done and they are stored in all different systems (project management software, ticketing systems, our heads, etc) I often have to say “yeah, that’s great, all these projects have things that need to get done, but what do I need to do today?”.

A few years ago I read Time Management: The Pickle Jar Theory and loved it. The theory is, if you fill your day (jar) with sand (small meaningless stuff) first, you won’t be able to fit larger stones (important things) in at all. However, if you fill the jar with larger stones, then smaller stones, then sand, you get big important meaningful stuff done on a regular basis.

Daily Jar on an index card.

Soon after I read that article, I decided I was going to try to use some of the ideas in it to help me get important things done every day. I started by writing 3-5 things (1-2 words each) on an index card every morning with a sharpie and kept it with me at all times. Anytime I got distracted and needed to figure out what was next, I would look at this index card and it would immediately bring me back to what was important. I would think of it as my personal beacon that always points me in the right direction and gets me back on track when I got distracted.

The index card works great (still does), however, it doesn’t help you keep a queue of “next up” items or things that need to get done on a certain day. I slowly started using my homepage in my Backpack account as my “Daily Jar” and “Next up” queue and Highrise to schedule items that need to get done on a specific day.

Backpack and Highrise being used as a daily jar.

This combination has worked great for the last year or two but it is starting to show some weaknesses. First, I have two lists of things that need to get done, one in Backpack and one in Highrise. I’ve also started to add metadata to items in my lists to signify what project it is for and sometimes how complex the task is. I note complexity because it helps me keep moving forward when I know I don’t have enough brain power for something complicated.

I’ve tried really hard not to build a dedicated product around this concept because I just wanted to use it to get other stuff done. Now I’m thinking about it again because I really want to solve some of the weaknesses of my current system. Chris Conley, Jason Tremblay, and I actually built a prototype a couple years ago (yay Rails Rumble!) but I and the others stopped using it pretty quickly. We built it to show what we could do but didn’t spend a lot of time solving actual problems.

You may be thinking “do we really need another to do list app?”, a perfectly valid question. Have I mentioned I am trying really hard not to build this? Yet another to do list app? However, I think mine is different because it attempts to aggregate all your other to do lists. All your other lists live in many different places, this one would belong to YOU. Items in it may correspond to whole to do lists in another tool. The item in this is just there as a note to help keep you focused.

So, now lets talk about what I want to build. It is aptly called… Daily Jar! Here are the features I think it absolutely needs in order to be an improvement on my current system:

Version 1

  • Create projects
  • Add items to a project
  • Move items from a project to your Daily Jar every morning (in a desktop web app)
  • Automated emptying (put items back) of your Daily Jar in the wee hours of the morning. This is to make sure you re-prioritize things every morning
  • Complete items
  • Read-only web-based mobile view of your Daily Jar. This takes the place of the index card and is the thing you look at throughout the day to bring you back to focus.

Version 2

  • Create items that will go in your Daily Jar on a certain day
  • Create items that will go in your Daily Jar every week on a certain day. (I often create 5-7 to do items for things I always do on Sundays)
  • Complete items in mobile app
  • Create items with SMS

Future Versions

  • Create items in a mobile app
  • Move items from a project to your Daily Jar from mobile app
  • Share a project with someone else (Say… share a project named “Redo Patio” with my wife)

I’ve also created some simple mockups as a way to solve some of the core problems.

The first one is the desktop version. The use case for this is moving items to your Daily Jar every morning.

Daily Jar desktop mockup.

The second one is the read-only web-based mobile interface. The use case for this is something to look at to help you stay focused throughout the day.

As I said in a previous post, I try not to build anything anymore that doesn’t have a way to make money from the start. I’ve thought about this quite a bit and I think I could totally charge a flat $5/month with a free trial to see if it helps you.

What do you think? Would something like this help YOU fight entropy and keep moving forward? I know it will help me!

How Do They Have Time For All of This?

June 12, 2010

If you are always wondering how people have enough time to do the things they are doing,

  1. close Twitter
  2. close Facebook
  3. close email
  4. turn off the tv
  5. write 1-3 important (not urgent) things you want to do today on an index card
  6. keep the index card in front of you at all times
  7. get to work

Any time you feel the urge to check Twitter, Facebook, email, or the tv, just look at the index card and it will keep you focused.
Trust me, it will be ok if you don’t know what everybody is doing for 4 hours.

How I Evaluate New Ideas

June 08, 2010

Like many of you I don’t have a problem coming up with many ideas for new products. The hard part for me has been figuring out which ones to pursue.

Some of you may not know this but I graduated from Drexel University as a structural engineer. I pretty much never touched a computer prior to my freshman year of college in 2000. Towards the end of college, I started to have many ideas for web apps that would solve my problems so I started to teach myself how to program using PHP. Three years after graduating, I quit my job as a structural engineer and went out on my own as a freelance Ruby on Rails developer. Over the next year or two, whenever I came up with an idea for a new web app, I would immediately start building it. This was my way of communicating the idea and prove to potential customers that I could do what I said I could do. I think the main reason I did this was because I was excited I could finally implement my ideas. However, it involved a lot of work that I would eventually throw away.

Last summer I went through everything I had built and archived things I was no longer interested in. I realized how much time I had wasted building things that ultimately didn’t stand a chance of mattering. This drastically changed my perspective on what is worthwhile and helped me start to formalize a series of questions I consider before starting a project. This experience and set of questions ultimately led me to build Lose It or Lose It and I have been very happy ever since.

So, without further ado, here are the questions:

Does it solve a problem I have? It is hard to solve someone else’s problem. You are guessing what will work and building based on what the people are saying they will/won’t do, not what they are actually doing. If you are building it for yourself, you can constantly test whether or not it actually makes life easier.

Are there several ways it can make money at launch? This is important because it is hard to maintain interest in something unless I can spend some significant time on it. If I don’t don’t have a way to make money form the start, then it is going to be a really long time (to never) that it will actually make money.

Am I excited about the idea? There are many worthwhile ideas out there that I am not excited about. Jason Tremblay and I built a patient status app for some doctors and when their interest started to wane, so did ours. We were excited about possibly making money from it but not about the product or the subject itself. Now we are left with an application that nobody is excited enough about to want to take it to market. (Anybody interested in buying it? Let me know.)

Do I have the money to make it if needed? I can develop web applications, however, there are many things I can’t do very well. If the project involves some of these things, then I am going to need to pay someone to help me.

Can I build a first version myself? This is necessary if I can’t pay someone to work on the idea for or with me. For example, I could do the development of Lose It or Lose It myself but I had some money to outsource the design of the site to Wildbit. If you can’t afford to outsource the stuff you can’t do, then you need to find a partner that can do that stuff, work hard to save up the money, or pick another idea.

[Rant warning] The “Idea Guy” is useless. He doesn’t have money to pay someone to build his stuff and he doesn’t think he can build his projects. If you are that guy, then work hard to raise money to pay people to build stuff for you, figure out how to do it yourself (I did, I’m a structural engineer by trade), or save up your money to pay someone to help you build it.

You may not need very much technical skill to build a first version yourself. One of my long-running ideas is a personal task management system called “Daily Jar”. I have been hacking Backpack to mimic it for months and only now am I growing out of it. It is much better to show a potential angel investor a draft UI for your product idea than to try to explain it in words. You could say “If you invest $15k in this, then I can build the first version and prove the concept.”

Will the world be a better place if this thing exists? I’ve recently added this to the criteria because I noticed that I was happiest on projects that did make a difference. iSepta really helped people get around the Philadelphia area. It was only when I tried to make money off it that I started to get grumpy.

Is this project realistically a hobby or a business? This can really help with keeping you happy. A few years ago Jason Tremblay, Chris Conley, and I created an app called iSepta, Simple SEPTA Schedules on the Go. We created it because it solved our problems and it made us feel great to create something people actually enjoyed using. However, we started to try to make money off of it and that is when things went down hill for me. By the time we were done trying, we hadn’t made any money and I was very bitter. Converting it from a hobby to a business made me very unhappy. I would have been better off if I had never tried to make money from it.

Summary: many partially implemented ideas is baggage and has a real cost. Be ruthless with your ideas and shut the door if they don’t fit your criteria. See if there is a way to get most of the way to your idea without building something new.

As part of my drive to evaluate ideas before implementing them, I’m going to write some blog posts about a few ideas (Daily Jar, WunID and Conf’d) I keep coming back to that I think are worthwhile. I’m doing this to think through them more and see if there is a demand for them.

Lose It or Lose It has a New Partner!

March 18, 2010

John Young I’ve got some really exciting news (at least for me), John Young has officially become a partner over at Lose It or Lose It! John and I have been working together on client projects for the last 18 months as well as partners on Nerd Merit Badges for the last 15 months. That has worked out really well so far and he has been helping out with the PR and marketing of Lose It or Lose It. He will bring his awesome marketing skills as well as some cash to help with ongoing development. Both of us will be the brains behind the project. However, I will be concentrating on development and John will be concentrating on finding ways to get more people using the site. Now, go follow him on Twitter, see his progress on Lose It or Lose It, or read some of his excellent writing over at his blog!

We are looking forward to making Lose It or Lose It kick ass even more and helping many people lose weight and be healthier!

About Lose It or Lose It

Lose It or Lose It helps people stick to their desire to lose weight by making them try for 10 weeks or be punished! You pick lb per week and dollars per lb and give us the money up-front. Each week, if you skip a weigh-in or don’t make your goal, you lose part of your initial investment. We send you daily reminders, post your weigh-ins to Facebook and Twitter, and let you add accountability friends who are updated every week with the status of your weigh-in. You weigh in by taking a picture of your feet on the scale and uploading it.

Lose It or Lose It - Why, How, and How Much!

December 20, 2009

Lose It or Lose It Logo

On November 16th I launched a website called Lose It or Lose It. The basic premise is you lose the weight or you lose your money. You choose dollars per lb and lb per week and you must weigh in every week for 10 weeks at or below your weekly goal. Hopefully by the end you will be 10-30 lb lighter and get all your money back! We make our money when people don’t make their goals, an optional tip at the end if they appreciate our service, and the held money in an interest bearing account.

I have had some interest about how Lose It or Lose It was built. I want to start with why, then go into how, then on to how much.

Why?

Me on the Scale at 282.2 lb! Over the summer I took the time to close the door on past projects and archive them. While I was going through them, I realized how much time, effort, and money I had spent building junk that never made any money. I decided the next project I worked on would have a way to make money from the start and would not be based on advertising. I hate advertising.

Around the same time, my wife Rebecca and I spent ten days traveling through Arizona and California. We had a blast and I wanted to be able to do more of it. I realized there is only one way to be able to do that, I need to get serious about building some of my own products.

A few months later, around September, I was thinking about how I am always trying to lose weight but never make any progress. I realized I needed an outside motivator where I would be punished if I didn’t stick to my goals, and it needed to be public. I was thinking other people probably needed the same thing and so I put two and two together and realized I came up with a project that fit all of my criteria! I decided to go all-in and build this for real.

How?

Wireframes Spread Out on the Table I ran the idea past a few trusted people (you know who you are, thank you!) and they thought it was worthwhile so I started. I kicked it off by getting my thoughts onto something concrete as quickly as possible in the form of wireframes hand-drawn on paper. I like doing this for every project because they are easy to throw away if needed and force you to think of the website from the outside-in, the way your customers will see it. Many developers start with what makes them comfortable, the back-end, but your customers don’t care about that… so cut it out!

I sent the wireframes over to Chris Nagele at Wildbit to review and estimate. They thought it would take three weeks to design the entire site so I gave them the money and they started. They did a fantastic job and delivered all the HTML, CSS, Javascript, and images required to make the site work. They even stubbed out the AJAX responses! This was a great way to do it because I knew how the site would work before I did any significant development. I had started some of the message passing work but I didn’t develop the part of the site that powered the front-end until they were completely done the design!

During design I went back to doing client work to try to free up some extended free time to develop the site once the design was done. I also went in search of a good lawyer to review the site and prepare the necessary documents to ensure our safety and that we would keep the money we actually make. I ended up choosing Andrew Baer of Baer Business Law. It was my first experience involving a lawyer in one of my own projects and a little nerve racking to spend that much money, but it was valuable. I have a kick-ass Privacy Policy, Terms of Use, and How It Works documents and he helped me think through how the business was going to work. I ended up simplifying some of it because of his advice.

Around the middle of October I started development. The first step took about three weeks and up to today I have probably spent close to four solid weeks of development. I am not sure if that seems like a long or short time, but I feel like that is pretty quick. I also started using Cucumber for the first time. It slowed down the development process but I now have a rock solid set of integration tests I can use to make sure I haven’t screwed up anything in a major way. Starting design-first was also nice because I was easily able to write Cucumber tests and make them pass to make the site work. I used Rspec for the gritty details and all the stuff that goes on behind the scenes to make the site work.

I launched with eight AWEsome beta users. My goal was 15 users by the holidays and I have reached that goal, I now have 16 users! I have found it is a little difficult to convert visitors into users. This could be for a number of reasons including

  1. They are waiting until after the holidays to sign up
  2. They may not be sure if it works
  3. They may not have the money to invest
  4. It isn’t clear to them how it works

I think all of these can be overcome but it is going to take experimentation and patience.

How much?

People said they were interested in numbers, so I’m going to put them out there.

  1. Design by Wildbit: $14,000 – it was less than that due to a friend discount, but this is the full retail price. Finding a great designer (you rock Gilbert!) is key because they are responsible for the public facing side of your product. This purchased the design, HTML, CSS, images, and Javascript required to make the entire site work.
  2. Legal by Baer Business Law: $4,725 – this paid for the incorporation, privacy policy, terms of use, how it works document, and 2 hours of “discussion” about using the word “penalty”.
  3. Promotions: $3,210 – I’ve promoted the site through a Barcamp Philly sponsorship (yay cupcakes!), Refresh Philly sponsorship, Reddit self-serve advertising, and on January 4th, a Daring Fireball feed sponsorship. Word of mouth has worked the best but that has only gone so far. I’m trying to see if getting the site in people’s minds will lead to a signup sometime in the future.
  4. Development by Forge38 (me): I have no idea because I did it myself, but many many hours! I didn’t keep track of hours because I do that every day with my client work and don’t like it.
  5. Misc: $500 – This includes having a friend do some market research and hosting costs.

I probably could have done this cheaper, but part of spending the money was making sure I stuck to the idea until the end; that I don’t build it then move on to the next thing. I currently have $450 on the line to lose 20 lb which I will get either way, but really, this $16k website is what is on the line. If I don’t lose weight, then others won’t want to sign up!

So far I have 16 users with a combined investment of $5,500. They have lost $115 (yay revenue!) and 141.6lb!

Next!

Lose It or Lose It iPhone Application So, what’s next? I’m looking for an angel investor or similar to help me grow the business. I believe I have proven the concept to be valid in that it helps people lose weight and can actually make money. I would like to build “Keep It Off or Lose It” to help those people trying not to gain weight as well as pay Will Ronco Awesome Software to finish the AWEsome iPhone app he prototyped for me. The app would make the weekly weigh-ins even easier!

That is pretty much it, if you have any questions, please feel free to contact me. I would be interested in presenting this material to user groups if they would find value in it. You can also follow Lose It or Lose It’s progress via the blog or twitter!

Holy Confirmation!

November 12, 2009

I have a bone to pick with account activation. Many sites require you to “activate your account” but what I really think they want and mean is “you need to confirm your email address”. Why do you need to confirm your email address? Nothing takes the place of actually going to your email account, seeing an email, and saying “Yes! I received the email and it didn’t land to my spam folder!”.

Now, many of the sites that require account activation don’t require reactivation when you change your email address. This leads me to believe that many people have forgotten why they are requiring activation!

I propose a process in which you are doing and calling it exactly how it is. Here it goes:

  1. The users table has confirmed_email and new_email fields and the User model has a method called email that picks from those depending on what they contain.
  2. When a new user signs up, their email address is stored in new_email and they are sent an email confirmation email with a link to confirm their email address. This doesn’t mean they can’t log in, it just means they have a message at the top of the screen and possibly limited functionality until they do confirm their email address.
  3. When they click the link in the email, the email address stored in new_email is moved to confirmed_email and they go about their merry business.
  4. When the user wants to change their email address, they are presented with a field where they can put in their new email which gets stored in new_email
  5. An email is sent to the currently confirmed_email saying they are attempting to change their email address. This is done to prevent the email from being changed maliciously.
  6. An email is sent to the new_email with a link to confirm their new email address
  7. When the link is clicked, new_email is moved to confirmed_email

So there you have it. Unless I hear otherwise, I’m going to start using this process to confirm a user’s email address.

I don’t think I’ve ever typed the word “email” so many times in my life… email email email email email.

GILT Driven

May 06, 2009

The very first presentation I went to at Railsconf was The Gilt Effect: Handling 1000 Shopping Cart Updates per second in Rails. I was expecting a good technical talk from the title but it ended up being a great business talk as well. Basically what GILT does is take left over luxury goods and sells them in an invite-only, time-limited shopping cart. Normally manufacturers don’t want to keep discounting the goods publicly because they don’t want to devalue their brand, they would rather burn them.

This is a great example, like ketchup, of a business that will bring in more revenue in a downturn. Less people are willing to spend money on luxury good so there are more left over. I have always kept my eyes open for examples of these in the hopes of coming up with one of my own!

Times Open Nerd Merit Badge

February 22, 2009

The New York Times contacted John and I a few a weeks ago about creating a special Nerd Merit Badge for their Times Open event on Friday 2/20. They were using this event to educate developers about different api’s they have released or working on. We were able to make it to the event and it was a blast. It was full of meaty content and really demonstrated what you could do with so much open content.

Here is a picture of the badge we created along with all of the other badges.

Times Open Nerd Merit Badge.

Nerd Merit Badge 02 - Inbox Zero

February 22, 2009

Inbox Zero badge.

This week John and I released our second Nerd Merit Badge, Inbox Zero. Inbox Zero is when you take the time to process your inbox until there are zero things left in your inbox. To get there, you either reply, ignore, or record an action in some other system. It’s amazing how productive you can be when you do this on a regular basis.

Interview over at Anthillz

July 29, 2008

Bill Quinlan from Anthillz interviewed me the other week for their blog, and it has now been posted. Have a read…

iSepta on The Digital Lifestyle

June 07, 2008

On May 27th, Jason Tremblay and I were interviewed about iSepta by The Digital Lifestyle. Check it out.

Full Stack Web Developers

June 03, 2008

Full stack of pancakes. Over the past few months, I have really started to admire what I call “Full Stack Web Developers”. A full stack web developer is someone that does design, markup, styling, behavior, and programming. Some examples of these types of developers are Jason Tremblay, Geoffrey Grosenbach & Tom Preston-Werner.

Jason Tremblay is a Philadelphia local who I met a little over a year ago. Recently, we started working together on a little project called iSepta where he did all of the user interface design. I was blown away with what he was able to produce as well as the development feedback he gave. I literally could not stop grinning from ear to ear.

Geoffrey Grosenbach is fairly well known in the Ruby on Rails world for the screencast and ebook company he put together called Peepcode. He has done everything for that site from design to development as well as all of the editing and voiceovers. Everything he does looks spectacular but he also has the deep technical knowledge to make most of the screencasts and ebooks.

Tom Preston-Werner has become widely known for such projects as Gravatar where he did all design and development and Github where he did some development but all of the design. He’s also known for a project called Fuzed which is a Rails server stack written in Erlang. Yes, Erlang.

About 4-5 years ago, I was in college going for a degree in structural engineering when I decided I had too many ideas not to learn web development. I finished out my structural engineering degree and worked in that field for 2 years before finally going out on my own in July 2007. What that means is while I was learning how to make sure a 60 story condo building was able to withstand an earthquake, I also was trying to learn ruby, rails, html, css, and javascript. That was tough, but I made it through and I think I can finally call myself a developer.

So, where am I going with this? I think I have finally decided that my next professional goal is to learn the last thing to becoming a full stack web developer, design. I am already proficient at everything from the back-end development to javascript, but I have always thrown my hands up in the air when it came to design. I’m not going to do that anymore. I’m going to tackle this like I tackled learning web development over the past few years.

If anybody has any suggestions about how I can go about achieving my new goal, please feel free to speak up! I have a feeling this is going to be quite a bit more difficult than web development since design is so subjective.

I Think I Am Going to Play This Every Morning From Now On

May 28, 2008

I used to have a video embedded here… but it wasn’t working with this shiny new Wordpress blog… so here is a link.

iSepta Has Landed!

May 18, 2008

Last night we officially launched our latest project, iSepta, “Simple SEPTA Schedules on the Go”. Our goal was to make accessing the SEPTA regional rail schedules simple on your cell phone. Although iSepta was initially built for the iPhone, it works just as well on many mobile devices and even your laptop or desktop.

Comparing the two schedules, septa and isepta.

Our number one goal with this application was to make it as simple and intuitive as possible. Although SEPTA’s presentation of schedules works great on paper pamphlets, it leaves something to be desired on mobile devices as you can see in the screen shot on the left. We decided to throw away any preconceived notions of how users should interact with train schedules and think we came up with sexy solution that you see on the right.

Features

  • Start/Stop: Catching the next train is as easy as choosing your start and stop stations, which will return information for the next 5 trains.
  • Recent Trips: Your five most recent trips you have planned will now show up on the home screen along with the next three trains for each trip.
  • Route Numbers: The appropriate route number is now displayed with each train

Upcoming

  • Route Names: This will really connect people with what they see at the station. So rather than displaying just “R5” with each train, soon we will display “R5 Thorndale/Paoli.”
  • Alert Notifications: SEPTA does provide realtime information on trains that are running late or have been cancelled which we will be integrating shortly into iSepta

One more thing…

Text message support! Simply text “iseptanow start station name to stop station name” to 41411 and receive the next 3 trains. For example, typing “iseptanow market to doylestown” will return the next 3 trains from Market East Station to Doylestown. You only have to type enough of the start and end stations to make it unique, so “iseptanow mark to doy” will also work.

Stay in the Loop

Make sure you keep up to date with what’s going on with "iSepta"http://isepta.org/ by subscribing to our “RSS feed”http://blog.umlatte.com/feed/atom.xml or following us on twitter. And as always, let us know what you think! Suggestions? Comments? Anything!

Credits

"iSepta"http://isepta.org/ developed in partnership with the talented Mr. Tremblay who developed the awesome user interface. This project would not have been possible without Indy Hall where all of us met.

Projects

More samples available
upon request.