How Do I Learn About [n]?

A place to discuss the implementation and style of computer programs.

Moderators: phlip, Moderators General, Prelates

Re: How Do I Learn About [n]?

Postby Stucky101 » Fri Aug 08, 2008 6:40 am UTC

C++:
http://www.cplusplus.com

Good for a quick reference.
"The earth is the cradle of humankind, but one cannot live in the cradle forever."
~Konstantin Tsiolkovsky, 1895
User avatar
Stucky101
 
Posts: 141
Joined: Tue Mar 27, 2007 4:17 am UTC
Location: Park City, Utah, USA, North America, Earth, Sol, Orion Arm, The Milky Way, Universe A

Re: How Do I Learn About [n]?

Postby Zoris » Sat Sep 20, 2008 5:17 am UTC

I'd really love some documentation on writing GUI's using smalltalk, especially in GTK. Also any general guides on smalltalk as I've just started learning.
Zoris
 
Posts: 34
Joined: Tue Dec 04, 2007 4:09 am UTC

Re: How Do I Learn About [n]?

Postby mas418 » Sat Oct 04, 2008 1:59 am UTC

hi, I have absolutely no experience/background in programming, but i want to try and get into it.
I'm looking for something very very basic, can anyone tell me where to start?
mas418
 
Posts: 3
Joined: Sat Oct 04, 2008 1:12 am UTC

Re: How Do I Learn About [n]?

Postby Kirby54925 » Sat Oct 04, 2008 9:13 am UTC

The book How to Design Programs is a good place to start. After that, you should move on to Structure and Interpretation of Computer Programs (you don't have to read the second half of the book regarding registers, but it is nice to do so). From there, you can branch out to different things such as learning another programming language, reading Donald Knuth's The Art of Computer Programming, etc. By starting with the first two books, it will give you the correct mindset when attacking different programming tasks and challenges.

Note that both HtDP and SICP are freely available online, so don't fret too much about the cost.
Kirby54925
 
Posts: 36
Joined: Thu Dec 13, 2007 3:43 pm UTC

Re: How Do I Learn About [n]?

Postby mas418 » Sat Oct 04, 2008 3:35 pm UTC

Thanks!
I'm excited to get started :)
mas418
 
Posts: 3
Joined: Sat Oct 04, 2008 1:12 am UTC

Re: How Do I Learn About [n]?

Postby Moargazm » Wed Nov 05, 2008 8:07 pm UTC

Anyone know any good tutorials for learning to use JSON with PHP? (Note: 0 experience with JSON)
Moargazm
 
Posts: 10
Joined: Tue Oct 21, 2008 4:08 am UTC

Re: How Do I Learn About [n]?

Postby Xanthir » Wed Nov 05, 2008 8:11 pm UTC

This isn't enough?

All JSON does is allow you to serialize an object into text, in a way that JS understands natively. PHP has both an encode and decode function for this purpose.
(defun fibs (n &optional (a 1) (b 1)) (take n (unfold '+ a b)))
User avatar
Xanthir
My HERO!!!
 
Posts: 3997
Joined: Tue Feb 20, 2007 12:49 am UTC
Location: The Googleplex

Re: How Do I Learn About [n]?

Postby Moargazm » Thu Nov 06, 2008 1:41 am UTC

Well I had no idea what JSON was until I read your post. >_>
Moargazm
 
Posts: 10
Joined: Tue Oct 21, 2008 4:08 am UTC

Re: How Do I Learn About [n]?

Postby existential_elevator » Thu Nov 06, 2008 12:17 pm UTC

What would be a good first language to learn?

Anyone who answers this question here will have their post deleted unless it's way more than what's covered in the Best language for n00bs thread. ;-)

My bad, sorry :(
Last edited by existential_elevator on Wed Nov 26, 2008 4:01 pm UTC, edited 1 time in total.
User avatar
existential_elevator
The awesomest one!
 
Posts: 3309
Joined: Fri Jul 27, 2007 10:31 am UTC
Location: The Ocean of Regret

Re: How Do I Learn About [n]?

Postby Berengal » Mon Nov 10, 2008 5:20 pm UTC

Where can I find a good online tutorial for prolog? I have been looking, but the tutorials have been lacking.

A more specific question related to a more immediate problem possibly solved by what little knowledge I already have: Is there a way to define facts to be true inside a predicate? By that I mean that e.g you've got your fact a(X) which is true inside the predicate p(Xs) for all X in Xs. Specifically, I'm taking in a map of adjacent nodes in a graph, and I want adjacent(A, B) to be true for all A:B in that map. If someone knows of a better way, please tell.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.
User avatar
Berengal
Superabacus Mystic of the First Rank
 
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway

Re: How Do I Learn About [n]?

Postby dev3 » Wed Nov 26, 2008 3:58 pm UTC

Regular expressions?

I've seen a lot op people talk about it, but haven't actually felt the need for it. But I've decided to learn it anyway. All the tutorials I found online however, were too complicated.

Any good resources, you guys could point me towards?
dev3
 
Posts: 7
Joined: Sun Oct 28, 2007 6:03 am UTC

Re: How Do I Learn About [n]?

Postby thoughtfully » Wed Nov 26, 2008 4:30 pm UTC

I learned by reading the grep man page and the docs for Python's re module. Start with simple expressions, verify all the edge cases, correct your misunderstandings, increment complexity, rinse n repeat.
Image
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery
User avatar
thoughtfully
 
Posts: 1917
Joined: Thu Nov 01, 2007 12:25 am UTC
Location: Minneapolis, MN

Re: How Do I Learn About [n]?

Postby Berengal » Wed Nov 26, 2008 4:42 pm UTC

Short intro of what it is and what it's used for. Once you get that, take a look at your favorite language's regex module's documentation. Actually, don't bother looking at it, just have it handy, and try to solve a problem that might be solved with regexes.

Example problem: You've got a file of names and phone numbers, separated by commas. Make a list of tuples on the form (firstName, middleName, lastName, phoneNumber) using regexes. If someone only has two "words" in their name, the middle name is the empty string, and if they've got more than three "words", the first name is every word except the last two. Use your local format for phone numbers (I'm using nine digits in a row here). Example file "John Doe 123456789, Mary Sally Smith 987654321, Boy Named Sue Dickins 123987456". Make sure invalid names are rejected ("Susan 123456789" and "Mary Hopkins 123" would be invalid, for different reasons). Extra credit: Make every name word starting with a lowercase letter be part of the succeeding name (if there is one), so e.g. "Adolf van Grüner 123456789" becomes ("Adolf", "", "van Grüner", "123456789").

After you've done this, read the tutorials. They should make sense now.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.
User avatar
Berengal
Superabacus Mystic of the First Rank
 
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway

Re: How Do I Learn About [n]?

Postby theotherjimmy » Sun Feb 01, 2009 10:08 pm UTC

How about the 802.11 stack implimentation? if you find anyting, I will be greatful (considering I will not have to read the >10k slc of all implimentations that I have seen)
; and logic ensued, bringing joy and releif to people through out the land
theotherjimmy
 
Posts: 14
Joined: Sun Feb 01, 2009 9:37 pm UTC

Re: How Do I Learn About [n]?

Postby halbarad » Tue Feb 10, 2009 9:57 am UTC

I'd like some help on learning about algorithms, I have done nothing on them at college and I want to expand my programming abilities. Preferably Java orientated tutorials would be good as well but any general algorithm stuff would help.

Thanks
halbarad
 
Posts: 393
Joined: Mon Dec 08, 2008 11:49 am UTC

Re: How Do I Learn About [n]?

Postby Berengal » Tue Feb 10, 2009 2:07 pm UTC

halbarad wrote:I'd like some help on learning about algorithms, I have done nothing on them at college and I want to expand my programming abilities. Preferably Java orientated tutorials would be good as well but any general algorithm stuff would help.

Thanks
I've used wikipedia, mostly, but at uni we used 'Data Structures and Algorithms in Java' (http://java.datastructures.net). It was decent and thorough enough for a Java book. Of course, there's always Knuth...
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.
User avatar
Berengal
Superabacus Mystic of the First Rank
 
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway

Re: How Do I Learn About [n]?

Postby thoughtfully » Tue Feb 10, 2009 4:22 pm UTC

This is the book I used. It's very comprehensive, and while a bit intimidating, it ain't got squat on Knuth in that department. It's actually organized pretty well, heft is the main issue.
Image
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery
User avatar
thoughtfully
 
Posts: 1917
Joined: Thu Nov 01, 2007 12:25 am UTC
Location: Minneapolis, MN

Re: How Do I Learn About [n]?

Postby halbarad » Wed Feb 11, 2009 11:05 am UTC

Berengal wrote:
halbarad wrote:I'd like some help on learning about algorithms, I have done nothing on them at college and I want to expand my programming abilities. Preferably Java orientated tutorials would be good as well but any general algorithm stuff would help.

Thanks
I've used wikipedia, mostly, but at uni we used 'Data Structures and Algorithms in Java' (http://java.datastructures.net). It was decent and thorough enough for a Java book. Of course, there's always Knuth...


thoughtfully wrote:This is the book I used. It's very comprehensive, and while a bit intimidating, it ain't got squat on Knuth in that department. It's actually organized pretty well, heft is the main issue.


Thanks to both of you. I will look into getting one or both of these.
halbarad
 
Posts: 393
Joined: Mon Dec 08, 2008 11:49 am UTC

Re: How Do I Learn About [n]?

Postby briguyd » Thu Feb 12, 2009 9:52 am UTC

I don't think anyone has posted Dive Into Python yet. http://www.diveintopython.org/index.html

It really has helped me pick up the language and it's available for free online. The book is also currently being updated for Python 3.
briguyd
 
Posts: 14
Joined: Sat Jun 02, 2007 4:36 pm UTC

Re: How Do I Learn About [n]?

Postby Mach1ne » Thu Mar 12, 2009 3:36 pm UTC

I know J2EE is somewhat similar to J2SE but they do have quite a few difference. Any good known resources that deals with just J2EE?
User avatar
Mach1ne
 
Posts: 35
Joined: Tue Feb 24, 2009 5:20 pm UTC
Location: This exact location but 3 minutes from now

Re: How Do I Learn About [n]?

Postby morrock » Tue Mar 24, 2009 8:08 pm UTC

Pretty obvious that no one has gotten to this yet. I started learning Forth a little while ago (for no purpose than curiosity and I think it's a very interesting language, as well as too much time on my hands). In case that someone else out there cares, here are some of the resources I have used so far/have been using.

A Beginner's Guide to Forth What I first read, a pretty good basic introduction.
Starting Forth. Most of the beginning is pretty much the same as the above link, I preferred the above link. This one also has weird pictures.
morrock
 
Posts: 5
Joined: Sun May 04, 2008 8:20 pm UTC

Re: How Do I Learn About [n]?

Postby Rysto » Tue Mar 24, 2009 9:30 pm UTC

Mach1ne wrote:I know J2EE is somewhat similar to J2SE but they do have quite a few difference. Any good known resources that deals with just J2EE?

I can't really help you, but I wouldn't call J2EE at all similar to J2SE. J2EE is a set of Java libraries for doing enterprise stuff -- it mostly deals with server-side code. J2SE is the standard Java library that's supplied by any Java Runtime Environment.

I think that Sun has some J2EE tutorials on java.sun.com, but I have no idea how up-to-date they are.
Rysto
 
Posts: 1420
Joined: Wed Mar 21, 2007 4:07 am UTC

Re: How Do I Learn About [n]?

Postby Ventanator » Thu Apr 09, 2009 6:17 pm UTC

blob wrote:For a comp sci oriented introduction to Python there's also
How to Think Like a Computer Scientist: Learning with Python


Dunno if anyone else is having problems with this link, but it doesn't work for me.

P.S. - I can do basic programming on a TI calculator (the 84), so what would be a good language/resource to go with to make the switch to programming on a PC?
User avatar
Ventanator
 
Posts: 158
Joined: Thu Mar 26, 2009 10:22 pm UTC

Re: How Do I Learn About [n]?

Postby Berengal » Thu Apr 09, 2009 6:43 pm UTC

Ventanator wrote:
blob wrote:For a comp sci oriented introduction to Python there's also
How to Think Like a Computer Scientist: Learning with Python


Dunno if anyone else is having problems with this link, but it doesn't work for me.

Link works fine for me.
Ventanator wrote:P.S. - I can do basic programming on a TI calculator (the 84), so what would be a good language/resource to go with to make the switch to programming on a PC?

The default forum language to recommend: Python.
Personal favorite: Haskell, but for the first "real" language Python beats it. Unless you've decided to become serious about programming, in which case everything, but Haskell first.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.
User avatar
Berengal
Superabacus Mystic of the First Rank
 
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway

Re: How Do I Learn About [n]?

Postby masher » Mon Jun 01, 2009 5:29 am UTC

Does anyone know of any good tutorials about working with JFlex/CUP or ANTLR or the like? I'd like to mess about with implementing a scripting language...
masher
 
Posts: 822
Joined: Tue Oct 23, 2007 11:07 pm UTC
Location: Melbourne, Australia

Re: How Do I Learn About [n]?

Postby Agent_Irons » Mon Jun 22, 2009 3:11 pm UTC

Ventanator wrote:
blob wrote:For a comp sci oriented introduction to Python there's also
How to Think Like a Computer Scientist: Learning with Python


Dunno if anyone else is having problems with this link, but it doesn't work for me.

P.S. - I can do basic programming on a TI calculator (the 84), so what would be a good language/resource to go with to make the switch to programming on a PC?

C or C++, actually. It'll be like programming on a TI-84 only everything will suddenly be easy. When you have a pretty good grasp of that, go to python, and the exact same thing will happen all over again.
Agent_Irons
 
Posts: 213
Joined: Wed Sep 10, 2008 3:54 am UTC

Re: How Do I Learn About [n]?

Postby LoginError » Mon Jul 20, 2009 10:37 pm UTC

Anyone have any resources for better understanding XML? I'm having trouble "getting" it, I understand generally how it works, and what it's good for, but would like to learn more. Preferably from a source that assumes you know little to nothing about it.
Image
User avatar
LoginError
 
Posts: 12
Joined: Sat Jul 21, 2007 3:55 am UTC
Location: coming soon to a web-based form near you

Re: How Do I Learn About [n]?

Postby maxliving » Sun Jul 26, 2009 2:10 am UTC

How about Objective-C / Cocoa / Any OS X Developing?

I have some experience with Java and C/C++
maxliving
 
Posts: 9
Joined: Sat Sep 29, 2007 10:51 am UTC

Re: How Do I Learn About [n]?

Postby Vault » Wed Jul 29, 2009 12:33 pm UTC

maxliving wrote:How about Objective-C / Cocoa / Any OS X Developing?

I have some experience with Java and C/C++


The best book I've found is probably Cocoa Programming for Mac OS X, but there are some good online materials as well, Cocoa for Scientists being one I find pretty good. IMO Apple's docs are pretty much useless until you actually get into it a little bit.
User avatar
Vault
 
Posts: 169
Joined: Mon Nov 10, 2008 5:00 pm UTC
Location: Just past the event horizon

Re: How Do I Learn About [n]?

Postby You, sir, name? » Wed Jul 29, 2009 2:52 pm UTC

I request a good learning resource for python3. Everything seems to be about python2, and the differences between python2 and python3. I want to enhance my python skills without first learning a deprecated version, and then re-learning everything.
Blag.
Ternary computer emulator. Latest version is 0.5 [Nov 29 2008].

Good morning, that's a nice tnetennba.
User avatar
You, sir, name?
 
Posts: 6128
Joined: Sun Apr 22, 2007 10:07 am UTC
Location: Chako Paul City

Re: How Do I Learn About [n]?

Postby Berengal » Thu Jul 30, 2009 12:18 am UTC

http://diveintopython3.org/

Although 2.6 is a pretty decent middle ground to be learning, and most things have stayed the same. Speaking as someone who learned python just after 2.5 got out, python 3 is 2.5 with some warts removed (strings now work, a single 'int' type (not int and long), classes implicitly inherit from object if they have no explicit inheritance).

Only a few things have changed since I started, the with statement (which was in 2.5 as well, but needed a __future__ import. It's in 2.6 as well), integer division doesn't truncate (from __future__ import division in 2.6, I believe). The 'integer division' operator (//) is in 2.6 already, where it works the same as / without the future import. 'print' is a function, not a statement.

I'm ranting. In short: Not much has changed. It's still dictionaries all the way down, except this time you'll be looking at them through iterators.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.
User avatar
Berengal
Superabacus Mystic of the First Rank
 
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway

Re: How Do I Learn About [n]?

Postby Vault » Tue Aug 18, 2009 12:57 pm UTC

Would anyone know of any good resources for Scala?
User avatar
Vault
 
Posts: 169
Joined: Mon Nov 10, 2008 5:00 pm UTC
Location: Just past the event horizon

Re: How Do I Learn About [n]?

Postby RoadieRich » Fri Sep 25, 2009 9:38 pm UTC

You, sir, name? wrote:I request a good learning resource for python3. Everything seems to be about python2, and the differences between python2 and python3. I want to enhance my python skills without first learning a deprecated version, and then re-learning everything.

Python2 isn't going to be deprecated for a while yet.
roband wrote:Mav is a cow.

UniJam 2012: Inter-university Games Jam hosted by Nottingham Trent University DevSoc.
nlug: Nottingham Linux User Group
DevSoc: The Nottingham Trent University Software Development Society
User avatar
RoadieRich
The Black Hand
 
Posts: 1030
Joined: Tue Feb 12, 2008 11:40 am UTC
Location: Somewhere only we know

Re: How Do I Learn About [n]?

Postby fjafjan » Thu Nov 05, 2009 1:51 pm UTC

Anyone got a good resource for just C? I couldn't find a good responce previously besides one book recomendation. Anyone got an online resource?
And note, I know C is mostly dated, I want to learn it to try and improve Zangband(Tk).
Oh yeah, and I know java fairly well, and have found this site, but a more robust resource would be nice
//Yepp, THE fjafjan (who's THE fjafjan?)
Liza wrote:Fjafjan, your hair is so lovely that I want to go to Sweden, collect the bit you cut off in your latest haircut and keep it in my room, and smell it. And eventually use it to complete my shrine dedicated to you.
User avatar
fjafjan
THE fjafjan
 
Posts: 4765
Joined: Fri Oct 06, 2006 12:22 pm UTC
Location: Down south up north in the west of eastern west.

Re: How Do I Learn About [n]?

Postby stephentyrone » Thu Nov 05, 2009 5:03 pm UTC

First off, C is most certainly not dated.

Second, if you want to learn it, get "The C Programming Language". Sorry, not online. It's worth buying the book. Deal with it. Supplement that by downloading the C99 standard, which *is* available online for free.
GENERATION -16 + 31i: The first time you see this, copy it into your sig on any forum. Square it, and then add i to the generation.
stephentyrone
 
Posts: 779
Joined: Mon Aug 11, 2008 10:58 pm UTC
Location: Palo Alto, CA

Re: How Do I Learn About [n]?

Postby Berengal » Thu Nov 05, 2009 6:59 pm UTC

C is dated but not outdated. It's aged pretty well.
It is practically impossible to teach good programming to students who are motivated by money: As potential programmers they are mentally mutilated beyond hope of regeneration.
User avatar
Berengal
Superabacus Mystic of the First Rank
 
Posts: 2707
Joined: Thu May 24, 2007 5:51 am UTC
Location: Bergen, Norway

Re: How Do I Learn About [n]?

Postby thoughtfully » Thu Nov 05, 2009 7:45 pm UTC

C is still the lingua franca of embedded and system software. The Linux kernel and pretty much all of the familiar command line tools are written in C. C is more widely known, more consistent in implementation, and is a lot simpler than C++.

C++ has a lot of use-cases for which C is inappropriate, but the converse is also very much the case!
Image
Perfection is achieved, not when there is nothing more to add, but when there is nothing left to take away.
-- Antoine de Saint-Exupery
User avatar
thoughtfully
 
Posts: 1917
Joined: Thu Nov 01, 2007 12:25 am UTC
Location: Minneapolis, MN

Please Recommend Ruby on Rails Resources

Postby Unparallelogram » Mon Nov 09, 2009 11:37 pm UTC

Hi guys. I'm trying to teach myself ruby on rails for the purpose of making facebook applications. So far, I've read a few tutorials and bits of books. The tutorials were nice, but far from comprehensive, and I only got an introduction. I probably made bad choices in books, because I'm not getting anything from the few I tried. One assumed I had no programming experience and wanted to use copy and paste code, another uses mostly a strange static mix of html and xhtml that reminds me of geocities etc rather than ruby, and one gets to mvc ideas and then the book ends. So I guess looking for free stuff on the internet doesn't always go so well. I would really appreciate if you guys could recommend some resources that can help me get started and then learn the important bits of using rails. Free is always a bonus, but I guess I wouldn't be opposed to buying books if they're good. Thanks.
Unparallelogram
 
Posts: 338
Joined: Mon Jul 28, 2008 4:16 am UTC

Re: How Do I Learn About [n]?

Postby J the Ninja » Fri Nov 27, 2009 6:10 am UTC

Ok, n00bish question here. If I wanted to teach myself OpenCL, where should I start? I really like the concept, and have read a good deal about the basics. Except....I really don't how to actually program. I can do scripting (Bash, HTML) but aside from a tiny bit of python experience in middle school, I really don't know how to do it. I am not a CS major, and have no interest in being one. I know several CS majors, and have seen from them it is not something I have any desire to do, and probably wouldn't be that good at. But I'd love to at least be able to understand it better, and maybe make something fun (visualizer, benchmark app, w/e)

tl;dr: Fairly experienced computer user, has a working knowledge of scripting, but cannot program. Wants to learn OpenCL. Where do I start?
User avatar
J the Ninja
 
Posts: 704
Joined: Tue Dec 30, 2008 9:08 pm UTC
Location: Portland, USA

Re: How Do I Learn About [n]?

Postby Ended » Sat Nov 28, 2009 1:03 am UTC

J the Ninja wrote:Fairly experienced computer user, has a working knowledge of scripting, but cannot program. Wants to learn OpenCL. Where do I start?

Disclaimer: I don't know OpenCL but I know CUDA, which is somewhat similar. (If you were wanting to learn CUDA I would suggest learning C to a good working standard, learning some basic parallel programming, and then picking up NVIDIA's CUDA Programming Guide.)

For OpenCL, I had a quick look and it seems like there is a fairly well-developed Python binding: PyOpenCL. So perhaps you could develop/refresh your Python skills, and then look at that. In any case, OpenCL is not a language as such, and you will have to learn a programming language (Python, C, C++, ...) before you can use it.

In addition, be aware that OpenCL is fairly bleeding-edge and, as something designed to execute on heterogeneous platforms (in particular many-core platforms like GPUs), is pretty difficult. So I suggest taking some time to develop a solid programming base (e.g. Python) before tackling it. But have a particular OpenCL binding (e.g. PyOpenCL) in your sights as you do so. (Incidentally, even using the Python binding, a basic knowledge of C will be helpful and perhaps essential.)

The material here might be useful.
Generally I try to make myself do things I instinctively avoid, in case they are awesome.
-dubsola
Ended
 
Posts: 1458
Joined: Fri Apr 20, 2007 3:27 pm UTC
Location: The Tower of Flints. (Also known as: England.)

PreviousNext

Return to Coding

Who is online

Users browsing this forum: No registered users and 9 guests