![](/images/sidebars/generic/codycrystal320.jpg)
Have a suggestion?
Click here to suggest a blog item.
Newsletters Archive
Catch up with DonationCoder by browsing our past newsletters, which collect the most interesting discussions on our site: here.
Editorial Integrity
DonationCoder does not accept paid promotions. We have a strict policy of not accepting gifts of any kind in exchange for placing content in our blogs or newsletters, or on our forum. The content and recommendations you see on our site reflect our genuine personal interests and nothing more.
Latest News
July 2, 2024
Server Migrations Coming
- Donationcoder server migration is slowly proceeding, expect some hiccups as we get all our ducks in a row..
July 19, 2022
Software Update
Jan 3, 2022
Event Results
May 13, 2020
Software Updates
Mar 24, 2020
Mini Newsletter
Dec 30, 2019
Software Updates
Jan 22, 2020
Software Updates
Jan 12, 2020
Newsletter
Jan 3, 2020
Event Results
Jan 2, 2020
Software Updates
Dec 30, 2019
Software Updates
- Automatic Screenshotter v1.16
- Screenshot Captor v4.35 beta
- Find and Run Robot v2.238 beta
- Clipboard Help and Spell v2.46.01
- LaunchBar Commander v1.157
- Mousers Media Browser v2.0
- MultiPhoto Quotes v2.09.1
- DiscussionList for Android v1.08
April 27, 2019
Software Updates
Feb 26, 2019
Software Updates
Feb 23, 2019
Software Updates
Feb 14, 2019
Software Updates
Jan 6, 2019
Event Results
Dec 2, 2018
Software Updates
Nov 13, 2018
Software Releases
July 30, 2018
Software Updates
June 24, 2018
Software Updates
June 6, 2018
Software Updates
Apr 2, 2018
Fundraiser Celebration
Apr 2, 2018
Software Updates
Feb 24, 2018
Software Updates
Jan 14, 2018
Major Site News
Jan 10, 2018
Event Results
Latest Forum Posts
Programmers who DonateI'm a small-time shareware/freeware author myself, and have a strong appreciation for the amount of time you're spending on this project. Simply put, I believe that good work should be rewarded.
M.R.
Our daily Blog
This page spotlights the most interesting posts collected from our forum every day.
You are viewing a specific blog item. Click here to return to the main blog page.
Latest Jeff Atwood (Coding Horror) Column: UI-First Software DevelopmentJeff recently quit his day job, but thankfully his Coding Horror columns are going strong. His most recent one is about the importance of prototyping a user-interface design before you start coding. Before I write a single line of code, I want to have a pretty clear idea of what the user interface will look like first... Of course, UI is hard, far harder than coding for developers. It's tempting to skip the tough part and do what comes naturally -- start banging away in a code window with no real thought given to how the user will interact with the features you're building. I agree completely with the idea of prototyping before coding. Personally I've found that the best way to design a program, especially if you are collaborating or working for a non-programmer, is to actually imagine the program is done, and walk through it's use. However, I do think something needs to be added. Speaking from someone who has fallen into this trap before, it's important to realize that although "to the end user, the interface is the application", as a coder you should as much as possible separate the user interface from the guts of the application. The user interface should be a light wrapper around the main code -- don't let it get it's hooks in too deep or you'll find that maintaining the code becomes that much more difficult. The "model-view-controller (MVC)" approach is a sound one, it advocated separating a program into a front-end view (the user interface), the main program logic (the controller), and the components dealing with any stored data (the model). So yes, by all means prototype programs before coding -- walk through them with a focus on how the user interface would actually work from a users standpoint. Then once you have that done, step back from the user interface and figure out how to code your program in a way that makes the user interface a thin (easily replaceable) layer. http://www.codinghor...archives/001091.html |
||