General Poker Discussion Poker Forums

Learn to Code?

or track by Email or RSS


mitch

Avatar for mitch

2007 posts
Joined 01/2008

Have been thinking about learning code for a while, would be totally awesome to be in a position to attempt a start up and I assume technical knowledge is pretty necessary for success. I was wondering what are the best avenues to learn to code (I have zero experience). I'm not sure which languages are important and which I should focus on but I'd like to have a broad range of skills which could cover design, apps, programming, databases, etc. At the moment I'm learning through Code Hero which is this new FPS game and Code Academy (same as code year).

Posted about 1 year ago

itsatrap

Avatar for itsatrap

1712 posts
Joined 07/2008

INB4 debate between .NET, PHP, and Ruby/Python fanboys

Posted about 1 year ago

mitch

Avatar for mitch

2007 posts
Joined 01/2008

TecmoSuperBowl

Avatar for TecmoSuperBowl

Tribe Leader
5546 posts
Joined 01/2009

itsatrap

Avatar for itsatrap

1712 posts
Joined 07/2008

That said, I myself am a .Net fanboy.

IF you decide to go .Net, just stay away from VB.Net... it has sort of become the running joke in the .net community and is seldom supported with material, sample code, etc. (I'll save the reasons incase a VB.Net fanboy starts crying ITT) Wink

I would recommend C#... the language is easy to pick up (strikingly similar to java) and has great amounts of support from development communities. Also, visual studio.net is just so damn intuitive that it makes scripting so much simpler than say the dark years of the 90's and early 2000's. Also, due to its inherent structural similarity to Java and C, you can easily learn Java, C, C++, and Objective C (iOS applications).

There are a variety of books/online material you can get started with but I would recommend the following to start with since they are structured differently than technical books for advanced users (won't confuse and/or bore you to tears) but still allow you to ease in with a running start and learn quite a bit before advancing up the ladder:

Books to build on the core foundations of programming:
Books on just OOP (object orientated programming) to get familiar with how the OOP environment works (modular environment, encapsulation, initialization and instantiation, etc.)

Books on discrete mathematics... something I highly recommend since virtually all of your applications are going to utilize these elements (logic, number theory, topology, discretization, algebra, etc) when scripting. (How can you create conditional statements if you don't understand logic!)

A book on databases... Learn SQL... Learn how to create proper database schemas and learn things like relational databases. Most programs you will create will need to store and extract information so the more you understand about SQL and databases in general (e.g. design, data integrity, relations), the easier it will be for you to design your application and scale them.

books for learning programming c#
Any of the "Head First" group of books (e.g. Head First C#)... they are a new and fun way to learn utilizing an unconventional approach to teaching which has been having rave reviews.

A reference book for the language your building in (e.g. C# Language Pocket Reference from O'Reilly publishing)... insanely valuable to locate specific information when you get "brain block" and need to figure out a specific piece of information

*********************************

I guess that about wraps up would I would advise for beginners.... lastly pick up Visual Studio and tinker around... Pick up Microsoft Access to get exposed to databases and play around...

Most of the stuff you will learn will be as you go... I always learn the most after hours of debugging... and just like poker visit forums, look at sample code, and play Smile

Posted about 1 year ago

matt9041

Avatar for matt9041

184 posts
Joined 11/2010

posting to come back to this in the future.

Posted about 1 year ago

TecmoSuperBowl

Avatar for TecmoSuperBowl

Tribe Leader
5546 posts
Joined 01/2009

posting to come back to this in the future.


Time traveler ITT.

Posted about 1 year ago

Entity

Avatar for Entity

8045 posts
Joined 11/2006

For web development, I'd recommend a subscription at http://www.codeschool.com - those guys are great, though a lot of the benefit you'd get from it is Rails+JS+coffeescript.

I've heard great things about Zed's http://learnpythonthehardway.org/ and Google's Python class as well - http://code.google.com/edu/languages/google-python-class/

The best way to learn is simply to start building things. There are plenty of tutorials out there, but I'd recommend just deciding on something specific you want to build, and then go for it. Once you've got a picture for what you want to make happen, the rest comes a bit more easily.

Rob

Posted about 1 year ago

NixonTheGrouch

Avatar for NixonTheGrouch

Section 9
1155 posts
Joined 11/2008

For the time traveler: I recommend COBOL.

Posted about 1 year ago

Entity

Avatar for Entity

8045 posts
Joined 11/2006

For the time traveler: I recommend COBOL.


Why not Fortran?

Posted about 1 year ago

itsatrap

Avatar for itsatrap

1712 posts
Joined 07/2008

Why not Fortran?


might as well go ASM

Posted about 1 year ago

huntse

Avatar for huntse

1432 posts
Joined 11/2010

A good programmer is able to write FORTRAN in any language. I would recommend scala fwiw.

Posted about 1 year ago

smershbloke

Avatar for smershbloke

313 posts
Joined 07/2008

http://www.microsoft.com/visualstudio/en-us/products/2010-editions/visual-csharp-express

Theres lots of very good tutorals within Microsoft website itself.

http://channel9.msdn.com/Series/C-Sharp-Fundamentals-Development-for-Absolute-Beginners

All the above is free too.

It will help if you have an idea for an application - otherwise you will be become bored/lost very quickly.
Learn the basics (see above). Then attempt an application. If you are stuck GOOGLE it. e.g. "I want to display colurs on a form in C#". You will get a ton of hits. I have been coding for 20+ years and i use google all the time.
My suggestion for an application would be a crude "hold em" poker game.
Randomise 52 cards and deal 2 to a single player. Then deal flop/turn/river when the user clicks a button on the screen.
This app will cover the fundamentals of coding which are:-
SEQUENCE
ITERATION
DECISION

The above three are used to write all software programs.

SEQUENCE
I want to do A then B then C
(where A,B and C are a list of actions/math etc)

ITERATION
I want to REPEAT C until X, Y or Z happens

DECISION
IF X then do A, If Y then do B

All programs can be structured in this way. Your task is to break the application down into the above 3 elements.

Posted about 1 year ago

BaseMetal

Avatar for BaseMetal

2051 posts
Joined 01/2010

Which language? I would vote for python for a complete beginner but c# is also great.

I would say it's best to keep it simple in the short term and to try to get some use from what you are learning, then just keep building up the knowledge. It is often very useful to be able to open and modify files, manipulate and process text and search directories for files/text. I would try to avoid the honey trap of doing apps with fancy graphic front ends, it's very easy to get caught up in trying to make something look good and you waste a lot of time changing button shapes or lining up controls, plus you get a lot of complicated boilerplate code that makes your own parts hard to find or keep separated. Start with command line type programs, once you learn to manipulate lists, vectors, files etc and do a bit of work then learning the front end stuff later is the easy part.

Posted about 1 year ago

snowboard789

Avatar for snowboard789

510 posts
Joined 03/2011

im a long time commercial coder here are my thoughts:

focus on basic programming stuff like iterations etc.
i would suggest to skip all the old school stuff like reading sequentially files and linked lists,trees etc and all this ancient C stuff

for learning ground up php > c#
php is easy, and probably the most widely used language today and its oop (not out of position lol)

but you must learn both

u must also learn how to use sql and build a sample database with mysql, this is not very hard.

u dont need a book on mathematics as previously mentioned imo, logic is logic, either u have it or not. being a poker guy u have it. there is almost no math in programming unless u want to make something very specific like a poker tool with combinatorics etc.

Posted about 1 year ago




HomePoker ForumsGeneral Poker Discussion → Learn to Code?