PrettyNeat! Software Development & Design based in Malta

we code the tastiest tech this side of the globe

cartoon business person

Enterprise Web Applications

We automate systems, to keep things simple at home, in-office, or on the go.

postgres icon sqlserver icon dotnet icon vue icon

Monolith or Microservice?

Organizations are complex, but the tools shouldn't be. We'll architect a system that works for you.

cartoon cloud and human brain

Cloud Applications and SaaS

We help provide the security, high performance and cost-effectiveness of doing things online.

aws icon ubuntu icon windows icon docker icon

Serverless, Containers or VPS?

Start local, take it global. From bots to subscription services - we'll put together a platform and stack combination that scales.

cartoon hand coming out of phone

Mobile and Multiplatform

We create responsive applications that adapt to your customers’ habits no matter what their device is!

ios icon swift icon android icon java icon

Cross Platform or Native?

Sometimes a responsive web app is all it takes. Other times, the only way forward is native. We'll help you figure out when its the right fit.

cartoon engineer

pick a stack...

Websites, mobile apps, digital games, and virtual or augmented reality experiences are our bread and butter.


We work with businesses to design and develop products, modernize internal systems, and bring digital services to market.

...any stack

check out what we're up to

Programmer Humour

A collection of developer jokes scoured from the internet. Why did the developer quit his job? Because he didn’t get arrays. {!False} it’s funny because it’s true :D. What made my day ( Day myDay = this.createDay() ); What is a ghost’s favorite type? Booooooooolean. ( @markdalgleish ) How many coders are needed to change a light bulb? None, it’s a hardware issue. Where do coders love to hangout. Foo bar. Chuck Norris doesn’t code apps. He just stares at the screen and apps happen. (2b || !2b). You are the semicolon to my statements A programmer had a problem so he decided to use Java. Now he has a ProblemFactory. What’s the object-oriented way to become wealthy? Inheritance. Programming is 10% writing code and 90% understanding why it’s not working. There are only 10 types of people in this world. Those who know binary and those who don’t. Profanity is the one language all programmers have mastered. The human brain is amazing. It works 24/7 from the day you were born. It only stops when you’re writing a code or speaking to someone attractive. JAVA Developer never RIP. They just get garbage collected. Programmer (noun) - A person who fixed a problem that you don’t know you have, in a way you don’t understand. Thanks for reading While we don’t usually post this sort of content, we do try to spice things up every now and then. If this brought a smile to your face please do consider subscribing for other software development related content.
Keep reading
on 30th September 2020

Azure Devops vs Github

A tale of Microwaves & Premature Optimization. The Microwave Moment “The objective was food. What I found, was distraction.” Earlier in my life, when shopping around for a microwave (or just about any appliance), I used to be the person hunting for the most knobs and switches. Aside from the promise of convenience, every extra button represented a problem that the manufacturer had graciously worried about on my behalf, so I didn’t have to. Double win! A better person than me likely takes a lot of pride in their many buttons and knobs, pouring over the manual for tricks and tips at every opportunity; memorizing the subtle differences in icon and duration between the ‘Popcorn’ and ‘Beverage’ options; Maximizing the use of ‘Oven Mode’ when heating leftovers for that succulent crunchy finish; Certainly not accidentally resetting the clock every-time they want to set an alarm. As I’ve come to discover in my adult life, I am not that person. I began skimming through the manual once… then I got hungry. I cranked the temperature to max, and set the timer for 1 minute. I ate, and moved on with my life. Nothing has changed since. When something is still cold at the end of that 1 minute, I repeat the process… until it’s not. I now look at the many knobs and switches not as solutions to prospective problems, but as perpetual distractions whenever I reach for a bag of uncooked popcorn. If only I went for the simpler microwave… A Developer’s Siren Song: Premature Optimization Now that you understand the relevant parts of my psyche let’s meander to the tech talk. For context, at the time of writing Pretty Neat is a small agency juggling a handful of clients and internal projects. Cue our recent foray into Azure Devops. All the knobs and switches! If you can imagine it, odds are there’s a configuration option for it. Every Agile consultant’s wet dream! Look at all the knobs and switches! Just look at them… Thus, with a few days budgeted for building our workflow around Azure Devops, we began pouring through the documentation, poking around with a couple of repositories and project boards, and generally structuring things ‘by the book’. Immaculate project structures, descriptive, well labelled user stories and sprints abound. Good feels all round. That is, until the actual work of software development started pouring in. In a world...
Keep reading
on 13th August 2020

The Well Mannered Modal

Soon, you’ll be set to raise well-mannered modals of your very own! What is a Modal? Overlays, dialogs, pop ups, alerts, light boxes… The much maligned Modal comes by many names, but its properties are generally consistent, irrespective of what one calls it. In short, a modal is a child window within the viewport of an application, that prevents interaction with the other elements on screen until resolving whatever is contained in the modal. Seems inoffensive enough, right? Well, modals are great until you’ve been attacked by a newsletter popup within three seconds of reaching a site. Or until you’re half-way through a setup wizard only to realize you need some information from the main window and going back will lose all your content. Or perhaps, you’ve found yourself redirected from one modal to another modal - without any clear indication of their relationship. All of the above examples (and countless more), while valid modals, are wrong. They’re valid insofar as they meet the definition of a modal. But they’re wrong in that they’re quintessentially poor applications of a modal. How so you ask? They disregard the actual purpose of the user’s interaction with the page, make assumptions about the user’s knowledge, or worse exploit the user’s frustration for profit. So modals are a menace… right? Well, hostile ones are. The Well Mannered Modal Well-mannered modals can make excellent additions to your site or application. With a firm upbringing, some delicate hand-wringing, and this five point listicle - you’ll be set to raise well-mannered modals of your own. User initiated. The well mannered-modal sits around patiently - not grumbling or itching to popup, just quietly waiting for a user to call upon it. A link click, button press or selection is an appropriate trigger for a modal. The elapsing of 3 seconds after landing on a page isn’t. Respect the user’s actions. Never interrupt, save for murder. This ties in neatly with our last point. Interruptions are bad unless they’re absolutely critical to the user’s current task. Warning the user they’re about to wipe their account, is probably a worthwhile interruption. Bullying the user into signing up for a newsletter prior to them even having finished an article, certainly isn’t. Avoid interrupting your users for non-critical stuff because it’ll distract and drive them away from whatever value you’re providing them. Keep it shallow, stupid. Modals are terrific for brief, self-contained...
Keep reading
on 24th July 2020
Contact us today!