Between UTF-8 and Unix, Ken Thompson is my engineering hero.
It is an amazing piece of 3D modeling software. After having used it, other 3D modeling software seems software seems clunky in comparison.
Rhino3D is the best mixture of command line, auto complete, and a mouse based interface that I have ever seen. Lots of CAD software combined the two, but Rhino does an incredible job. The commands are also incredibly well named, to the point that you can often just guess what you want to do, and the command is right there.
If you mean well architected, the RTOS that ran on the Microsoft Band is some of the best code I'll probably ever have the pleasure of working with. The lead architect on it reviewed every single code submission to ensure consistency in quality and style. Imagine hundreds of thousands of LOC with all the variables being well named, the same conceptual layout of code in every source file, all written against an incredibly well designed run time. The abstractions in the RTOS were all pure and consistent, you didn't run into surprises.
In terms of UI, a lot of specialty software actually falls into this category, it just has a learning curve, but the software is all driven around a single purpose and once you have learned it, that shows. Photoshop is actually like this, once you have learned it, the UI is incredibly powerful and the different abstractions used are at the right level of complexity to get the job done. (No idea how that code base looks though... :) )
The WPF Framework in the .NET Micro-Framework is another bit of good code. I think I am one of a handful of people to ever use it, but wow, is it a nice graphics API to write against. (Super limited, but that is kinda the point, it kicks butt at its one job!)
> In the last few months, there has been a lot of talk in the CAD community about proprietary file formats and how companies protect them. I would like to know how a CAD system like Rhino was able to succeed with a file format that is open, documented, and free (OpenNURBS).
The CAD users need and want open high-fidelity data exchange.
Unfortunately, open file formats are not in the best interest of investors. Investors would rather bet on companies that have a protected proprietary market.
Unlike most CAD companies, we are not a public company nor are we venture capital funded with plans to be public. That means that our only customer (and source of income) is our users.
> Rhino users had to wait a few years between Rhino 3.0 and the new Rhino 4.0. In the mean time, they enjoyed a continuous stream of improvements and bug fixes delivered to their PCs by the Rhino automatic updating system. Based on how well this system has worked, are you considering moving from a release-based system to some sort of subscription-based system?
No. Again, those systems are usually in the best interest of the investors. Our users have the luxury of not having to buy upgrades until we provide something that is actually useful to them. In addition, all current users get to be involved in the development process are every stage, not just for a couple of months at the end. Since we don’t pay any attention to what other CAD companies are doing, we rely on the users to provide the direction for each new release.
An absolutely amazing bit of software.
Warez/demoscene apps were usually awesome with badass visuals and music.
Dev products: Postgres, Heroku, Elixir, DigitalOcean, Tower (git GUI), Sentry
The way the UI design packs tons of control into a simple, flat interface. The way everything happens in realtime. The way everything can be routed and automated and chained.
Even though I'm a shitty musician, I love this program so much.
It can handle almost all image formats, loads up in less than 1s and everything is so fast and breezy. The Ui is super intuitive that I've never had to once search for help.
Worst-designed software: Oracle PeopleSoft Campus Solutions - https://www.google.com/search?q=peoplesoft+campus+solutions&... . A case study in "how many workflows can we fit into one infinitely customizable software product without hiring a UX or UI designer to give any thought to a single one of them? Oh, and how can we make it as non-performant as possible to do the most common tasks?" I understand the siren call of "an interface that works for every workflow imaginable" - but unless you build design-customization tools on top of it, it will be a hated monstrosity.
Fun story: my undergraduate college used this, and I got a highly competitive internship after an interview where I spent the majority of the time ripping apart exactly how bad this software was, and how I would fix various aspects. I imagine no person motivated enough to solve those problems has any desire to work for Oracle, so the problem will persist for at least another century.
When Jira gives you the mightiest of tools to postpone and reconsider everything into oblivion by discussing and custom-workflowing it in epic Cinemascope, Pivotal Tracker will give you just that little amount of space for collecting what you need, and then get things shipped.
It may be weird, but a company using Pivotal Tracker has a big +100 from my side when looking for a job.
Best proposed solution by people intimately familiar with the system was to have students purchase fake parking spots which were price-equated to match a workable unit to cover the wide range in prices. In other words, choosing to build with Habitat for Humanity was one parking spot, and trip to Ecuador was 100 parking spots. To enforce class size limits, they proposed to make one virtual parking lot per program and assign their number of available parking spots accordingly.
We didn't do it that way.
- Vim's commands and keybingings interface (not the UI).
I recently decided to finally get good at Vim, but the UI, being text-only, can be charitably described as "awful."
Solution: Sublime Text 3 with the NeoVintageous plugin. Takes a beautiful, highly customizable, extensible editor and adds most of the Vim bindings. I can do all of my main development work in a gorgeous editor, and when I have to hop onto an unfamiliar machine, I'm still good at using Vim.
I absolutely love dmenu, and the suckless philosophy is great. Dmenu ties in great to spectrwm, which is a simple tiling window manager that has sane defaults and just lets me work.
Vagrant makes my life so much easier, likely it's saved me hundreds of hours of my time.
And I find all of the Red Hat documentation to be fairly good where it matters, even if I prefer using Chef over Ansible in complex cases.
I know that TurboTax is a controversial choice because they are incentivized to fight to keep tax law complicated, but if we ignore the political context, their software works beautifully well. It never does anything I don't expect, when I need more time on a section it's easy to drop out and revisit later, and I always feel confident at the end that I've filled out my taxes correctly.
It has so many amazing plugins and the ability to sync settings AND plugins in combination with VCS allows you to pick up your project from anywhere. With a plugin like Key Promoter X you're well on your way to developing without taking your hands off the keyboard.
Built in terminal is great, no more alt+tabbing and cd'ing to the project directory.
It's only like $9/month on JetBrains
How can you know how well some software is designed by using it? You can't. You need to see the code, to look at its specs, etc.
Of course, the OP might be taking about UX, rather than the other facets of software design, but even then there's a large disconnect from the design and the use.
As a user, all you can do is comment on metrics that are important to you: usability, speed/responsiveness, accuracy, stability, originality... At best, this might hint at the result of good design, but not always.
PS: My actual answer to all of this is: Software design can always be improved upon. There is nothing that I've written that I can't improve upon/do better after a re-design.
https://varnish-cache.org/trac/wiki/ArchitectNotes and https://varnish-cache.org/docs/6.0/phk/firstdesign.html
It’s a ticketing/customer support Web app. A hundred tiny UX decisions make it much more pleasant than similar apps.
That's not to say that Linus is not a great engineer
Also wins for best software funded by my tax $$.
- Shopify for a web UI