6 ms·
He is totally wrong, but I still get the point and found the post funny.
by d0m 17y ago
He is totally wrong, but I still get the point and found the post funny.
- donw 17y agoI don't; it's obviously written by Yet Another Bitter Python Hacker, and isn't even really that funny. I think that the best First Programming Language to learn would still be C, followed by some flavor of Lisp. C, because it's both practical and teaches you how your computer works at a low level, and Lisp, because it shows you how powerful computers can be when you strip them down to the mathematical bone. Everything else is just some balance between the two.
- rimantas 17y agoisn't even really that funny. Yep, this one was better: http://james-iry.blogspot.com/2009/05/brief-incomplete-and-mostly-wrong.html http://james-iry.blogspot.com/2009/05/brief-incomplete-and-m...
- DanielRibeiro 17y agoNot only better, but also factual. Even Neal Gafter agreed with it: http://twitter.com/gafter/status/1739264519 http://twitter.com/gafter/status/1739264519
- jacoblyles 17y agoIt is interesting that you don't recommend any languages with a proper type system. Do you believe types are not important?
- angrycoder 17y agoI'm gonna take a guess and say he has been programming for more than 2 years and realizes that types really don't matter.
- donw 17y agoDefine 'proper' type system; C is a static, strongly typed language, with the important feature that the type system is simple enough for an inexperienced programmer to understand and be capable of implementing.
- Avshalom 17y agoI'm pretty sure C is considered weak in it will automatically cast from one type to another.
- Miky 17y agoC's type system is restrictive enough to get annoying occasionally, but doesn't protect you from loads of things it could, since it is not strongly typed.
- camccann 17y agoC's "types" are just interchangeable methods of interpreting a pile of bits. That's not a strong type system, that's types on the honor system.
- calcnerd256 17y agoBy "proper" do you mean mandatory? Otherwise, people are going to yell "CLOS" at you.
- cageface 17y agoI'm guessing you're referring to languages like Haskell here. I think the work people are doing on types in those languages is fascinating but it also seems like work in progress and I wouldn't recommend those languages to a beginner. The key concepts in the lisp-like languages (closures, higher-order functions, garbage collection etc) are easier to understand in a dynamic language IMO.
- runT1ME 17y ago>The key concepts in the lisp-like languages (closures, higher-order functions, garbage collection etc) are easier to understand in a dynamic language IMO. How so? F# and Scala, and Haskell aren't dynamically typed languages...
- PostOnce 17y agoI 'learned' C first, never did anything useful. C is not beginner friendly simply because it provides no instant gratification. Python is instant gratification for newbies. You can make a GUI in five minutes. In C you have to READ A BOOK first. Console apps don't thrill young people. GUIs do. My two cents, take it for what it's worth.
- runT1ME 17y agoActually, this is the best push for Python i've ever seen. Its not a great production grade language, but I agree, getting people interested in programming is more important than getting them to grok the hard parts of programming (C/C++)
- yogione 17y agoHow do I make a GUI in 5 minutes using python. Can you please point me to a link / blog post. thanks.
- PostOnce 17y agogoogle 'tkinter' Here's an example I just made: #-----begin------ from Tkinter import * #part of standard library def reverse(): s=entrybox.get() #get text from entry widget entrybox.delete(0,END) #delete text from entry widget entrybox.insert(0,s[::-1]) #reverse text, insert it root=Tk() #create a window entrybox=Entry(root) #create an entry widget entrybox.pack() #display it in the window button1=Button(root, text='Press Me', command=reverse) button1.pack() entrybox.insert(0,'type here') #add a default value root.mainloop()