4 ms·
I am currently trying to get back into programming. I haven't touched code in 10 years and way back then I was still writing little-- applets I guess we would
by Random_Person 16y ago
I am currently trying to get back into programming. I haven't touched code in 10 years and way back then I was still writing little-- applets I guess we would call them today-- in QBasic and cracking out some crappy VBasic stuff. I was completely self-taught which meant that my code was as sloppy and inefficient as you could possibly imagine while still successfully getting the job done. I had been writing BASIC for about 10 years at that point and was pretty competent with the way I hacked things together.
Here I am, years later, vastly more knowledgeable than I ever have been, yet code dumb. I have a few things I would like to develop solutions for, and Java seemed to fit my needs. I started on the "How to Think Like a Computer Scientist" book and I've enjoyed it, but I'm starting to feel that maybe Java isn't the solution I am looking for.
A few solutions I would like to have implemented quickly and I am heavily considering refreshing my limited knowledge of VB and cracking out some hack code.
I'm torn right now. Learn a new multi-platform language and proper coding practices or just settle for some Windows only solutions that I could complete in a vastly shorter period of time.
edit: spelling
tl;dr - write code again (learn a language)
- Poleris 16y agoIt might be interesting to just learn how to be a great information architect and product manager. Head a team of offshore developers to make your ideas happen. Just an idea...
- Random_Person 16y agoI honestly think I would be good that that. I am a very mechanical person-- a large portion of my friends and family refer to me as "the fixer." I feel that I generally am able to develop innovative solutions to problems, but I currently lack the coding skills. The problems with the few things I want to accomplish currently is that they are not really money-making solutions. They are personal things that I would like to implement across a variety of platforms to include Windows, Linux and my cell. Another would be simplifying work-related tasks that could benefit my co-workers as well, but are not something that the company (nor myself) would be interested in spending largish sums of money on developing.
- nzmsv 16y agoPython. Easy to get started, but also very capable.
- Random_Person 16y agoI looked at Python a few years ago and lacked the self-discipline to continue forward with it. I remember nothing of that failed attempt other than everyone spouting how wonderful and easy it was. It could very well be my answer though. One of the solutions I would like to work on involves a few small applications that I would need to run on Windows, Linux, OSX and cell phones. I could cut out the cell phone requirement if needs be as I would likely be one of a handful in my company that would use it. I sought Java out as a truly multi-platform endeavor that most of my users would already have installed on their systems. I know very few Windows users that have Python or would know what to do with it. Also, I would eventually like working towards redeveloping our current web apps which are a mess of dysfunctionalism at its finest. Does it sound like I would be better served with Python? Also, the allure of VB for me, like any Visual environment is that I can quickly build nice GUI's that make my stuff instantly usable by the-- less informed-- that I work with.
- nzmsv 16y agoTo write Java well you have to understand object-oriented programming. I think first learning to program is easier without OOP, or GUIs for that matter. But if you already know the basics, learning OOP is a good next step. Not trying to force you to use Python - I just thought I'd address some of your concerns. You don't have to ship Python to your Windows users - there's a way to glue the Python runtime to your program and generate a standalone EXE (see py2exe.org). Also, a non-trivial Windows application will eventually need an installer. Which could install a Python runtime. But distribution is a problem for later. Java on cell phones is a totally different beast than the regular JRE. Getting your desktop Java program to run on a phone is not an automated task by any means. Also don't forget that your desktop users have to have the JRE installed (and preferably running the same version). Learning to program takes time. You will likely end up rewriting many of the earlier pieces of your app, and possibly have to reorganize it entirely. I see that you are trying to replace an existing system that is badly put together. That's a good motivator, but keep in mind that quick and dirty solutions are unlikely to produce a good result, at least not until you rewrite that first attempt. Having said that, there is a place for VB, and it has an undeservedly bad reputation. My own programming language timeline went like this: QBasic, VB, PHP, C, Java, Python. Having gone through all of the above, Python seemed easy and well-designed. But the easy to learn part is at least somewhat influenced by having done similar things before.
- epochwolf 16y agoMay I recommend learning either python or ruby? They are both fairly easy to pick up.