SQL Clone
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 


Starting to Program


Starting to Program

Author
Message
Steve Jones
Steve Jones
SSC Guru
SSC Guru (62K reputation)SSC Guru (62K reputation)SSC Guru (62K reputation)SSC Guru (62K reputation)SSC Guru (62K reputation)SSC Guru (62K reputation)SSC Guru (62K reputation)SSC Guru (62K reputation)

Group: Administrators
Points: 62653 Visits: 19111
Comments posted to this topic are about the item Starting to Program

Follow me on Twitter: @way0utwest
Forum Etiquette: How to post data/code on a forum to get the best help
My Blog: www.voiceofthedba.com
Frank W Fulton Jr
Frank W Fulton Jr
Valued Member
Valued Member (60 reputation)Valued Member (60 reputation)Valued Member (60 reputation)Valued Member (60 reputation)Valued Member (60 reputation)Valued Member (60 reputation)Valued Member (60 reputation)Valued Member (60 reputation)

Group: General Forum Members
Points: 60 Visits: 132
My usual starting point for Powershell is with "The Scripting Guy" at http://technet.microsoft.com/en-us/scriptcenter/dd901334.aspx
If he does not provide what I am looking for I then do a Google and/or Bing search.
Alex Gay
Alex Gay
Mr or Mrs. 500
Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)Mr or Mrs. 500 (565 reputation)

Group: General Forum Members
Points: 565 Visits: 474
When I needed to learn XPath and XQuery I went to W3Schools (www.w3schools.com), the tutorial was straight forward and has a good reference section.

I started off as a VB6/VBA programmer years ago with the Microsoft Press book Visual Basic Step-By-Step and added SQL to this later.

CodeAcademy (http://www.codecademy.com) has a basic introduction to Java.

However most of the time I learn best from books (not e-books) and have found the O'Reilly books some of the best references with their "In A Nutshell" range. I also have a large collection of Microsoft Press books for topics such as ADO.NET, Powershell and C#.
P Jones
P Jones
Ten Centuries
Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)Ten Centuries (1.2K reputation)

Group: General Forum Members
Points: 1233 Visits: 1517
VB should be the start as SSIS uses it and particularly VB.NET. I'd recommend a course first but my favourite website for getting to grips with vb.net web apps was 4guysfromrolla.com
Nadrek
Nadrek
SSCommitted
SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)SSCommitted (1.9K reputation)

Group: General Forum Members
Points: 1891 Visits: 2729
The same advice holds true for a DBA learning to program as anyone else learning to program; determine your goals.

For any DBA, I'd say learning SQL would be the most important - not just memorizing Microsoft additions, but really working with the language at a detailed level. You'll note that the advanced scripts we see use a variety of concepts to achieve their aims, some of which are little Microsoft based tricks, and some of which are very sound, generalizable algorithms and techniques. SQL Parameters are essentially no different than variables in other languages, passing arguments is similar - make use of OUTPUT parameters in stored procedures, and that'll be a sound base for other procedural languages.

If you're not serious, then play around with whatever you like - I'd recommend, in general, a scripting language.
A simple set would be SQL, batch files or Powershell, and x.NET or Python or another modern easy to write language.

If you are serious, pick about three disparate languages... and learn your algorithms and underlying constructs. Learn about sorting algorithms, from bubble and selection sorts to hash and quick sorts. Learn about pointers and trees and linked lists and hash tables and other data structures. Learn about network coding - at a minimum, TCP and UDP. Learn about disk access, buffered and unbuffered, sequential and random. Learn about CPU instruction sets. Learn about stack based vs. register based coding. Learn about word alignment. Learn about data types. Learn about parallel programming. Learn about memory management.

A very serious set would be, say, SQL, C, and some CPU's assembly language - after learning these three, anything other procedural language is just syntax.
(1)C++ can be learned as an adjunct for object oriented programming, but for the very serious, learn C first; object orientation is an abstraction layer for the programmer that doesn't survive at the instructions the CPU executes.

A moderate set would be, say, SQL, x.NET or Python or another modern easy to write language, and either C or an assembly language.
x.NET - all .NET languages are essentially a front end to a very large library of functions and procedures, with minor syntactical differences. VB.net is case insensitive, C#.net is case sensititive.
Eric M Russell
Eric M Russell
SSChampion
SSChampion (12K reputation)SSChampion (12K reputation)SSChampion (12K reputation)SSChampion (12K reputation)SSChampion (12K reputation)SSChampion (12K reputation)SSChampion (12K reputation)SSChampion (12K reputation)

Group: General Forum Members
Points: 12290 Visits: 10662
I've actually started tinkering around lately with, Inform, a natural language programming tool for writing interactive fiction (remember Zork?). There are tons of tutorials and examples out there, and most of the stories are published free along with the source code. This would make an excellent entry point for school kids who are interested in programming computers. Also, for those of us who program professionally, it's nice to cleanse the pallet at the end of the day and program something that doesn't involve number crunching and deadlines.

Inform website.
http://inform7.com/learn/
A website hosting an Inform interperter, IDE, place for writers to post their stories.
http://playfic.com/


"The universe is complicated and for the most part beyond your control, but your life is only as complicated as you choose it to be."
jasona.work
jasona.work
SSCarpal Tunnel
SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)SSCarpal Tunnel (4.1K reputation)

Group: General Forum Members
Points: 4067 Visits: 11747
I've done some Powershell, although mostly I've found scripts to accomplish what I need in general, then fine-tune them. An excellent resource for picking up on Powershell is the Sapien Press book: TFM - Windows Powershell 2.0

Also, as Frank W stated, the Microsoft Scripting Guys are also a big help.

Jason
paul.knibbs
paul.knibbs
SSCrazy
SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)SSCrazy (2.5K reputation)

Group: General Forum Members
Points: 2543 Visits: 6232
I was a programmer long before I had anything to do with SQL. I started coding in BASIC on a ZX Spectrum 30-odd years ago. I've done Pascal, C, C++, C#, and assembly in my time, and yet the language I find the most frustratingly difficult to figure out is, you guessed it, SQL. The mindset you need to be in to do things in a set-based fashion as opposed to a procedural fashion is utterly different, and I suspect it's actually easier to come at this from the SQL side to the procedural side than it is to do it the other way round!

As for learning procedural languages, I actually think a BASIC variant is a pretty good place to start. The syntax is certainly more akin to SQL than, say, C is (using <> for "not equals" and Boolean operators spelt out as their English names, for instance), and modern BASICs are considerably more structured than the famed spaghetti code generators of yore. You can also use VB.NET to write your CLR routines once you're done!
chrisn-585491
chrisn-585491
SSCommitted
SSCommitted (2K reputation)SSCommitted (2K reputation)SSCommitted (2K reputation)SSCommitted (2K reputation)SSCommitted (2K reputation)SSCommitted (2K reputation)SSCommitted (2K reputation)SSCommitted (2K reputation)

Group: General Forum Members
Points: 1956 Visits: 2437
As a programmer, three skills I suggest are: version control, project management and documentation.

As for a .NET language to use with SQL Server and it's features, I hate the fact that VB is supported more than C#.
Michael Meierruth
Michael Meierruth
Ten Centuries
Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)Ten Centuries (1.1K reputation)

Group: General Forum Members
Points: 1056 Visits: 2514
Steve,
I got a real bang seeing that photo on the right hand side of your editorial. Not many people can say they actually ever used a card punch machine. I can say that I used it and enjoyed it. and was really good at it.. and it brings back some good feelings of the past - like BASIC, FORTRAN, ASSEMBLER and yes COBOL.
Go


Permissions

You can't post new topics.
You can't post topic replies.
You can't post new polls.
You can't post replies to polls.
You can't edit your own topics.
You can't delete your own topics.
You can't edit other topics.
You can't delete other topics.
You can't edit your own posts.
You can't edit other posts.
You can't delete your own posts.
You can't delete other posts.
You can't post events.
You can't edit your own events.
You can't edit other events.
You can't delete your own events.
You can't delete other events.
You can't send private messages.
You can't send emails.
You can read topics.
You can't vote in polls.
You can't upload attachments.
You can download attachments.
You can't post HTML code.
You can't edit HTML code.
You can't post IFCode.
You can't post JavaScript.
You can post emoticons.
You can't post or upload images.

Select a forum

































































































































































SQLServerCentral


Search