Blog logoMatthew Lang

Software

A 6 post collection


Start Simple

 •  Filed under Links, Software

With current trends towards front end frameworks and micro-services, it's refreshing to see advice that goes against these trends in software development. Applies to more than just software development as well you know.

When starting an application your goal should be to ship a MVP (minimum viable product) as fast as reasonably possible while still maintaining quality. To help make that successful you need to be minimal. Evaluate if you really need to start with a front-end framework or if you can get by with static HTML and JavaScript where needed. Build a monolith instead of starting with microservices to avoid the unnecessary overhead that affects development, infrastructure, and team productivity. In every situation you encounter, ask yourself if what you’re trying to do is really necessary.

Start Simple by Thoughtbot

1Password for Families

 •  Filed under Security, Software, Links

AgileBits have announced their new plan for families.

It’s never been easier to share 1Password with your whole family. There’s no sync service to set up, vaults appear automatically, and there’s an Admin Console where you can invite people and manage sharing with your family.

Every family member gets their own copy of 1Password, and their own personal space to store private information. With this, you can give them the tools they need to stay safe without taking away their independence.

Introducing 1Password for Families

1Password itself is an excellent tool, but this just makes it so much better.

Free Can Be Good

 •  Filed under Software, CRM, Posts

If you know me and you read my blog on a regular basis you’ll know that I’m an advocate for paying for the software you use. It’s simple, support the software that supports you. Lately though I felt that I was paying for software that I rarely got any use from. As I checked my recent outgoings I noticed that there were a number of software services I was using where I couldn’t justify the monthly fee for using them.

For the last three months I’ve been using OnePageCRM for managing leads and deals. It’s a nice and simple CRM for small businesses and it does a fine job of managing leads and contacts but I was using it just once a week. It cost me £8 per month to use but when you multiply this by four or five similar services, I was looking at £40 in software that wasn't necessary.

OnePageCRM didn’t fit the bill but I still needed something that will let me manage my contacts and deals but on a free plan. Then when the time comes for more functionality and there’s room in the budget, I’ll be able to scale up to a paid plan.

In the past I gave Highrise a short spin, but at the time I couldn’t justify the $29 for the Solo plan. It was simply too much money for what I needed but I didn’t give the free plan a look.

After a quick import of contacts from OnePageCRM I’m now up and running on Highrise’s free plan. Okay, I’m not paying for it now but in time I’m hoping that with a busier schedule and more clients, I’ll be able to spring for the solo plan and it will continue to help keep my business ticking over.

Paying for the software you use is good to do, but when you your own needs are for a service that gives functionality on an ‘as and when’ basis then free plans are an ideal way to make sure that you get the functionality you need while also ensuring that you can upgrade to a paid plan in the future.

Complicated Software

 •  Filed under By Me, Software, Tools

Complicated software looks like hard work, but does that make simple software easier. I would say no. In fact I think it's harder to produce simpler software than complicated software.

At the weekend I got into a conversation with my Dad about complicated software. My Dad is a draughtsman. He puts together the drawings for piping installations such as refineries and oil rigs. He uses software on a daily basis for his piping designs, but it wasn't always done this way. When he started in his career nearly 40 years ago there wasn't a computer to be found near the desk of any draughtsman. Everything was done with pen and paper. Simple tools by today's new tool of choice, CAD software.

Over the last couple of decades the mouse has replaced the pencil as the draughtsman's main tool for work. In this time the market for CAD software has boomed and with it come some of the most complex software I have ever heard of. My Dad has made the gradual change to CAD over the years through a number of training programmes and plenty of on the job experience. His biggest bug bear though is the software. In his opinion it is too complicated.

For over a decade now I've heard many complaints against software being too complicated. Complicated software isn't the root of the problem though. Software starts with people and what those people want. These are the initial requirements of software, what we expect it to do. Given enough time, and no constraints, any software product can go from simple and easy to use to bloated and complicated. In the past it was thought that a software product rich in features was the way to sell it. What happens over time though is that the product continually grows and grows as it caters to more and more requests until it becomes just too big and complicated to use. Those original features that made the software a hit have become bogged down by other quick hit features that only cater to a small subset of users.

We software developers are a bit older and wiser now though and we've learned a lot from those first days of commercial software. The main thing I think many software developers have learned is that it is okay to say no to a request. This is perhaps the hardest thing to do, we want our software to be used by many, but that doesn't mean catering to every request. Saying no to nine features, but yes to one is our way of saying that we care about the software we produce. If a feature doesn't fall within the general mantra of the software then we should say no to it. Yes, we might gain a few more users, but in turn we could end up annoying half of our existing users.

The thought of complicated software has made me re-assess the projects that I am working on and how they can be simplified for the people that use them on a daily basis. It's also made me question requests from clients for changes to their products. I could simply take the money and add the new feature, but by questioning that feature I could be opening a new discussion with the client to find the exact source of the problem and deliver a solution that will simplify the software instead of complicating it.

One Gesture, Multiple Actions

 •  Filed under By Me, Software

I've been using Unread on my iPhone since it's launch and it is a joy to use. I star the articles I want to remember so that I have a list of them in my Feedbin account, then I share the article to my reading list. Simple right.

My only niggle is that I have to do these as two separate actions. Why can't they be combined?

Far be it from me to dictate the features of an application written in a language I have no knowledge of, but if these steps are coded into the app, then why do I have to do them individually? Surely there must be a way of allowing me to combine the actions I want to take when I star an article?

This isn't a dig at Unread or it's developer but what I'd like to see more of in applications is automation. One gesture or action to star an article and share it to the places I want to.

The argument against this would be that some people might just select every network and blog they're connected to and share it everywhere which is silly, so maybe limit the number of actions that can be combined to three maybe?

With a growing number of social networks, bookmarking sites and other blogs, it can take some people a number of gestures to share an article to the places that they want to. Why can't we combine these into one?