November 01, 2016 4 Ways to Mediate Software Development Costs Presenting, the 4 things that drive up your software development costs but can be done for less with some compromises and little loss in glitz and glamor. Robin Thomas Before joining MentorMate, I taught web development. For many of my students, the hard part wasn’t writing code — it was managing expectations. They expected to crank out “The Next Facebook” and felt defeated when they didn’t. My students were experienced and intelligent adults. They had solid careers behind them and now just wanted to do something different. But unless you’ve spent years eyeballs-deep in code, it’s difficult to gauge what can be reasonably accomplished with technology. Cut Software Development Costs From time to investment dollars, lean UX saves big. Animations, file uploads and other obvious and commonplace bits of tech can have big price tags that leave entrepreneurs and product managers reeling. That’s because they’re complicated. Just publishing a “Hello, world!” webpage without using SquareSpace is a big accomplishment. Presenting, the 4 things that drive up your software development costs but can be done for less with some compromises and little loss in glitz and glamor. 1. Animations I do my taxes on the IRS’ Free File Fillable Forms website. Opening or closing the navigation menu makes the site slide horizontally for one second, and then the navigation bar slides vertically for one second. Two seconds is nothing. But when you sit through that animation 60 times those two-seconds add up. Couple this with the fact that I’m doing taxes in the first place, and that you can’t do anything until the animation is done, and you have a real tooth-grinder. Web design is hard. You have to consider color, typography, positioning, dead space and a million other things. If something’s wrong with one of them the whole webpage feels “off”. And that’s just when everything stands still. If components move around the page, you suddenly have another million design choices to make: acceleration, direction, changing opacity, timing… How many hours of your life have been spent getting your Powerpoint slides to transition just right? A box that moves across the page in 10 seconds takes just as many billable design hours as a box that moves across the page in half a second. Trim Your App UX Process and Slim Costs From time to investment dollars, lean UX saves big. Cut Software Development Costs & Try This Instead: There are few situations in which you need animations. Resist the urge to add them until the rest of your app is done, and then only if you can afford to pay more to put icing on the cake. 2. Uploading Images, Documents or Anything Else Upload boxes look so small on a webpage and seem like such an obvious need. How can they cause so much trouble? The problem is you need a place to put the uploaded files, and storage space is expensive. A single medium-size image takes up as many bytes as the full text of Pride and Prejudice. And once you’ve found a place to store it, every time someone wants to view the image your server has to transmit all that data all over again. If you let your users store files willy-nilly you’re going to have to pay a tremendous amount to keep from running out of room. Cut Software Development Costs & Try This Instead: Let another site do your dirty work. If you need to store images, use an API to upload them behind-the-scenes to a free third-party site like Imgur.com. Your users likely won’t notice a difference. 3. E-mails A lot goes into sending an e-mail. You need an account; you need a server that knows how to “speak” e-mail; you need a way to let your app talk to your server, while keeping anyone else from spamming it. Sending attachments is a whole different elephant. If you get that setup, then you need to worry about formatting. Outlook, Apple Mail and virtually every other mailing program has a slightly different way of reading and displaying messages. Making something look the same across all of them can be a full-time job. Cut Software Development Costs & Try This Instead: Having your app send an e-mail is tricky, but it’s very easy to open the user’s default e-mail application, open a new message, fill out the different fields and let them click the “send” button. It’s also very easy to take what you wanted to send and display it as a print-friendly webpage. Every computer has a “print to PDF” function, letting your users save the information to their desktop. Plus, it only takes 2 words of JavaScript to make your users’ “print” dialog pop up. 4. User Accounts Making user accounts is easy. Letting people log in to them, stay logged in and not log in as someone else is hard. As soon as you get your first user, you should make security your priority. This is true even if you don’t store credit cards or Social Security numbers. Your Pig Latin translator app’s database getting hacked may not seem like a big deal until you remember that half of your users have used the same password for every Internet account they’ve had since seventh grade. But security is complicated. Nothing is 100% secure. The best you can do is make things really inconvenient to hack. Making your app inconvenient to hack also makes your app inconvenient to create. Cut Software Development Costs & Try This Instead: Save security for last, when everything else is done. Until then, either have just one “God” account, or let users log in with only usernames and forget about passwords. Unfortunately, not worrying about users is hard, too. I’ve seen many developers fizzle out on great ideas because they got hung up on user authentication and never got around to building what makes the app unique. You need to worry about security once you have users, but you can ignore it until then. “Signing in” is no good unless you have something to sign in to. Tags MobileDesign StrategyDevelopment Share Share on Facebook Share on LinkedIn Share on Twitter Share Share on Facebook Share on LinkedIn Share on Twitter Sign up for our monthly newsletter. Sign up for our monthly newsletter.