4 ms·
> Not sure about GUIs but that's another area where programming becomes tedious and unfun, at least for me. When I have problems with UIs it's because there's
by Jach 16y ago
> Not sure about GUIs but that's another area where programming becomes tedious and unfun, at least for me.
When I have problems with UIs it's because there's a lack of separation in structure, design, and scripting that you get with HTML+JS or MXML+ActionScript which both make UI dev really easy and fun. In contrast, I think Swing, AWT, WxWidgets, Tkinter, GTK, Windows API, .NET, and even Qt make graphics programming a pain in the neck (some more than others). But once you get toward a more web-approach of UI, s-expressions are a perfectly fine way of representing XML too. Tags are functions, Perl realized that as well.
My own experience with writing low level software is that without a good support library you're going to be doing assembly that may be painful depending on the microcontroller and what you're interfacing with. (ARM stuff is pretty good.) If there are good bindings for higher languages like Lisp, programming in Lisp becomes nice again. PyGame is a great example of porting a (in my view) somewhat ugly C library that is SDL and making it nice and neat to use in the higher level Python. I know a team in Colorado who are using Flex to build a multi-touch application on a USB tablet.
In the face of no good library though, C is definitely a great choice and it's useful for augmenting assembly. If I want to worry about memory and pointers, C's my goto language.
- zwieback 16y agoVery true. 99% of my work is C on small, embedded ARMs now and we don't have a display so no need to worry about GUI directly. However, we do have web servers and the GUI work has become more pleasurable with HTML+JS and/or (gasp!) PHP.