03-02-2008, 03:37 PM | #1 (permalink) |
The Computer Kid :D
Location: 127.0.0.1
|
Learning Programming/Database Languages?
I've always wanted to take up learning a language. All I really know is some basic scripting for various things, including a little batch scripting, as well as some HTML. I took QBASIC/VBASIC a few years ago in High School but I just kind of waddled my way through those classes because I didn't give a rat's ass.
Is it worth taking courses at a community college? Currently I'm going to a 4-Year for a BS in Engineering, yet if I take CS-related courses they do me no good. Is there any such thing as an associates degree in CS? |
03-02-2008, 04:08 PM | #2 (permalink) |
Darth Papa
Location: Yonder
|
What sort of apps do you want to build? For web application building, it doesn't get much easier to jump into than PHP.
For scripting purposes, you can learn to write .bat files for Windows or BASH (or other shell) scripts for OSX or Linux. Visual Basic is an okay place to start to write simple desktop apps for Windows, although there are those who say it will damage you for life if you ever want to use a "real" language. Ruby is a nice introduction to Object Orientation, and it has bindings for the Windows API, so you can write a Windows application in it, and it's still technically a scripting language, so you don't have to worry about compilation. If you're an engineering student, you're plenty smart to pick this up on your own. Get thee to Barnes and Noble's Computer section and pick out the book published by O'Reilley that seems to best describe the language you're choosing. Don't short-cut it and buy a "cookbook", buy something with "Programming" in its name. I really recommend O'Reilley--they may be a bit stronger in the Linux world than in Windows, but they're still the best tech book publisher out there. |
03-02-2008, 08:58 PM | #3 (permalink) |
The Computer Kid :D
Location: 127.0.0.1
|
I really don't have a particular goal. Just something I can play with, create a little something-something with, and least importantly, add some leverage to my resume.
I really appreciate your insight. I wouldn't mind hitting up B&N or Borders. Unfortunately I don't think there are any too close to me at college. I'll see what I can do. |
03-03-2008, 12:59 AM | #5 (permalink) |
Junkie
Location: Melbourne, Australia
|
I think it's got to be in some area that you are interested in yes? Otherwise you're less likely to get far.
I'd steer clear of the hard-core languages actually... There's no point trying to compete with the comp-sci set. There's a lot of them these days, they're serious, and they're mad keen for jobs (particularly given the outsourcing situation). One thing that could be useful is to learn how to build small applications using VBA, so that you can automate stuff in Access and Excel. This is plenty useful and quite powerful for an eng. situation. After all - most corporates use MS. You can always build on this later. Other than that, if you have a specific hobby (web, home automation, design, photography, astronomy.. ?) I'd suggest you pick something that dovetails with that. |
03-03-2008, 10:59 AM | #7 (permalink) | |
The Computer Kid :D
Location: 127.0.0.1
|
That's helpful. I really have no intention of competing with the CS core. I'm doing Industrial/Systems engineering, which is a rather broad field, so having skills like basic programming are helpful.
Quote:
Can you elaborate on that a little more? I'd like to think I'm fairly proficient with MS Excel (I know most of the formulas, know how to make graphs, but that's nothing too special) -- but I really don't know anything about MS Access. Is that anything worth learning? I've heard a lot of good things about Lisp and Python, as well as Ruby/Ruby on Rails, but that's primarily web development and there's a lot of hype. |
|
03-03-2008, 11:12 AM | #8 (permalink) |
Lover - Protector - Teacher
Location: Seattle, WA
|
MS Access is the bottom of the DB food chain. It works, but it's terrible for anything beyond a small (40ish) user base. It's probably worth learning if you intend to work at smaller companies, like startups and "shops." The vast majority of 'corporate' or 'enterprise' level companies use MS SQL or Oracle DB. Postgre SQL and mySQL are gaining ground, but don't even approach the user base of Oracle or MS SQL.
I think a "novice skillset" should include knowledge of all the core relational database concepts, including SQL commands, ADD, UPDATE, INSERT, DELETE, etc., with good knowledge of how joins work. These commends, with minor syntactical difference, will apply to any real database system you're asked to use, especially if you have general relational DB concepts down. Likewise, a "novice skillset" should include PHP/Perl/Apache knowledge if you anticipate web-centered corporations. C# or Java would be nice for OO knowledge, and both have large following. The largest 'home and professional' software vendor (MS) is using C# almost exclusively, and the largest enterprise software company in the world (Oracle) is using Java exclusively. Become familiar with objects and control statements in both languages, at the very least.
__________________
"I'm typing on a computer of science, which is being sent by science wires to a little science server where you can access it. I'm not typing on a computer of philosophy or religion or whatever other thing you think can be used to understand the universe because they're a poor substitute in the role of understanding the universe which exists independent from ourselves." - Willravel |
03-03-2008, 11:26 AM | #9 (permalink) | |
Darth Papa
Location: Yonder
|
Quote:
However, it does make a very usable interface to a real database over ODBC. I have a client who interfaces with MySQL on his web server over Access/ODBC, and it works great for him. There's latency, since the data is over the Internet rather than right there on disc, but the app itself is rock solid. |
|
03-03-2008, 04:48 PM | #10 (permalink) |
Junkie
Location: Melbourne, Australia
|
For sure. Access is disliked by the IT community, and so is Excel. Screw that. I'm a DB professional and have worked with over probably a dozeon companies, half of them international ones. What I say is... ignore the IT high priests and do your stuff.
Major stakeholders will fund IT to get on board later if they need to scale the system to a large user base. Lots of systems though don't have that many users. This web stuff can be overkill. Anyways... Excel continues to be a corporate mainstay. MS Access I like somewhat less - because it used to freeze up if pointed to an ERP system (or used to with older object models). It's probably not so bad now. For those who don't know what I mean here.... Access can use local tables, but it can also be used as a front end to remote tables living in Oracle,DB2,SQLServer etc. That is where things can (but not necessarily) get nasty if - there's lots of tables on the remote system (ERP have 10-30thousand), or - you are going to deal with more than one concurrent user, or - the remote system is on another site... link speed is critical Other than that, if you have one-two users. Access can be nice. Either way. the underlying macro language (Excell/Access) is VB for Applications. This is useful to know because it can also be used with other MS products. ASP (the MS web server) uses VB script. So does windows scripting. For an engineer out on site - the ability to roll their own DB is important in my view.. Ditto with advanced spreadsheet manipulation (a statistician friend loved it, for matrix manipulation). Often.. the most important thing here is to get prototypes up. If a large number of users are required... sure, give it to IT and have them upgrade it. Threaten to do something yourself and they might jump eh. Last edited by Nimetic; 03-03-2008 at 07:55 PM.. Reason: Automerged Doublepost |
03-03-2008, 08:08 PM | #11 (permalink) |
The Computer Kid :D
Location: 127.0.0.1
|
That's quite interesting. We have done a little excel work. We had a few problems where it was optional to use excel to compute summations. I did use excel because I'm rather adept and it worked out well - I had a very, very low percent error and a very, very high grade
On a side note I have a cousin doing agriculture study and calculating total energy input/output using massive spreadsheets. Just kind of cool. I ran a small webserver once. It ran Windows Server 2000. I threw Apache on there with MySQL. I figured out how to do Apache, and since I knew HTML and a little flash, I had fun with that. Never really got into the MySQL but I understand the basics of it. I tried doing some hand-scripting, and then attempted to use a program to set up databases. I never really did anything worthwhile. What the hell is VBA, if I may ask? I agree though, it is a nice basic skill to have to be able to whip things up out in the field. Regardless of bolstering my resume, having skills like this helps out in a lot of odd situations. |
03-04-2008, 05:23 PM | #12 (permalink) | |
Crazy
|
Quote:
Ruby is at or near 10 years http://en.wikipedia.org/wiki/Ruby_%2...ng_language%29. Python is seventeen http://en.wikipedia.org/wiki/Python_...ng_language%29. Just curious. I would not put any language on my resume after I've only tinkered with it for a little while. A decent interviewer can usually spot resumes and interviewees that have been padded. So just make sure you are comfortable answering several questions about any language you put on your resume.
__________________
Even if you stop the clock, it gives the right time twice a day. Once we get out of the eighties, the nineties are going to make the sixties look like the fifties. Last edited by kofspades; 03-04-2008 at 05:27 PM.. |
|
03-04-2008, 07:28 PM | #13 (permalink) | |
Darth Papa
Location: Yonder
|
Quote:
|
|
03-04-2008, 09:13 PM | #14 (permalink) |
Cracking the Whip
Location: Sexymama's arms...
|
Humph, I learned on Pascal, and that was good enough for me!!
Anyway, dear Ratbastid sensibilites not withstanding, a VB .net programmer will never go hungry
__________________
"Of all tyrannies, a tyranny exercised for the good of its victims may be the most oppressive. It may be better to live under robber barons than under omnipotent moral busybodies. The robber baron's cruelty may sometimes sleep, his cupidity may at some point be satiated; but those who torment us for our own good will torment us without end, for they do so with the approval of their own conscience." – C. S. Lewis The ONLY sponsors we have are YOU! Please Donate! |
03-09-2008, 05:54 PM | #15 (permalink) |
Junkie
Location: Melbourne, Australia
|
VBA is just "Visual Basic for Applications".
(... although MS marketing have probably renamed it by now). It's the macro language supported in MS Office. ie Excel, Word, Access. It's supported somewhat in various other tools also... MS Project, Visio and third party Windows apps. It's really just a cut down version of VB. As I understand it... I'm no VB expert really. (but I use VB, VBA and VBscript occasionally). Lets be honest... these are mongrel languages. Using these... well it's about as sexy as driving a tractor. You'll pick up some odd habits and will curse a bit. |
03-14-2008, 03:29 PM | #16 (permalink) |
Crazy
|
If you are going for an engineering degree and want something to beef up your resume then I think you should go with something more mainstream like Java. While Phython and Ruby are good languages I think having Java on a resume over those would be more impressive. I've been programming for almost 20 years now. Started with Pascal and then moved to C and C++ and now use C# mostly. When I look at Ruby I go WTF. I can look at Java and understand it and even maintain it. I think someone who starts with Java could move to C like languages very easily whereas someone starting with Ruby might go WTF too.
As for databases, MySQL and Oracle XE are great databases. |
03-19-2008, 09:07 AM | #17 (permalink) |
The Computer Kid :D
Location: 127.0.0.1
|
Thanks. Last semester we did stuff with Mathematica and we just started MatLab today. Doesn't really qualify as anything advanced, but it works. It reminds me of VB in HS when we'd make stupid applications, sometimes stuff that didn't even function, it just looked fancy.
|
Tags |
languages, learning, programming or database |
|
|