vite (OP)
Legendary
Offline
Activity: 1018
Merit: 1000
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 01, 2013, 12:21:44 PM Last edit: August 01, 2013, 03:12:00 PM by vite |
|
I have decided to take up a new hobby, meaning gonna learn something new. So I will be learning python language.
I was wondering if a new base to start learning is the "learn python the hard way" a good way to get the basics of the language?
I got bored of browsing through wikipedia.
OP is not a programmer
|
|
|
|
jackjack
Legendary
Offline
Activity: 1176
Merit: 1257
May Bitcoin be touched by his Noodly Appendage
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 01, 2013, 01:20:11 PM |
|
I learnt Python by forking Joric's pywallet Maybe you can learn it by forking my fork ![Grin](https://bitcointalk.org/Smileys/default/grin.gif)
|
Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2 Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
|
|
|
KgBC
Newbie
Offline
Activity: 55
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 01, 2013, 02:30:24 PM |
|
I learnt Python by forking Joric's pywallet Maybe you can learn it by forking my fork ![Grin](https://bitcointalk.org/Smileys/default/grin.gif) I'm sure: THAT is the hard way ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) I don't know the book, but that's the way I would do: First a question: * are you already a programmer, and know what object oriented means? If not, I would: * get this in mind: programming is often try and fail. DONT GIVE UP if it doesn't run on the first, second or 30th try. * take breaks if it's getting mind blowing. * start with understanding procedural programming (not for use, just to know what programming was years before) * try to get rid of the idea of objects / object oriented programming (this is what you will use most of the time) --> these two doesn't have to be in python, a paper and a pencil, and taking notes what you read on the web is good enough. If you are already a programmer (or if you finished the first): * think of a small problem you want to solve, e.g. an simple egg timer, whatever. do KISS (keep it simple and stupid)! No fancy stuff! * try to solve it As soon as you have enough experience, do fancy things: * learn about async programming, signals, twisted * do graphics and game development * do whatever you like ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Congratulations, you are on the way to a good programmer!
|
|
|
|
jackjack
Legendary
Offline
Activity: 1176
Merit: 1257
May Bitcoin be touched by his Noodly Appendage
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 01, 2013, 03:02:26 PM |
|
I learnt Python by forking Joric's pywallet Maybe you can learn it by forking my fork ![Grin](https://bitcointalk.org/Smileys/default/grin.gif) I'm sure: THAT is the hard way ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) I don't know the book, but that's the way I would do: First a question: * are you already a programmer, and know what object oriented means? If not, I would: * get this in mind: programming is often try and fail. DONT GIVE UP if it doesn't run on the first, second or 30th try. * take breaks if it's getting mind blowing. * start with understanding procedural programming (not for use, just to know what programming was years before) * try to get rid of the idea of objects / object oriented programming (this is what you will use most of the time) --> these two doesn't have to be in python, a paper and a pencil, and taking notes what you read on the web is good enough. If you are already a programmer (or if you finished the first): * think of a small problem you want to solve, e.g. an simple egg timer, whatever. do KISS (keep it simple and stupid)! No fancy stuff! * try to solve it As soon as you have enough experience, do fancy things: * learn about async programming, signals, twisted * do graphics and game development * do whatever you like ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Congratulations, you are on the way to a good programmer! Indeed, his post made me think he already was a programmer. Anyway good tips. If OP isn't a programmer I wouldn't advise him to look at OOP though. The need of the concept will come by itself once he reads a bit about it. I never used OOP until recently as I never needed it before.
|
Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2 Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
|
|
|
KgBC
Newbie
Offline
Activity: 55
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 01, 2013, 09:29:32 PM |
|
Indeed, his post made me think he already was a programmer. Anyway good tips. If OP isn't a programmer I wouldn't advise him to look at OOP though. The need of the concept will come by itself once he reads a bit about it. I never used OOP until recently as I never needed it before.
Well, yes, OOP is hard to understand in first place. BUT it is state of the art ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) So learning programming means learning oop fairly fast. Not in the first place, but as soon as possible. There are good explanations about OOP around, I dont gave links because I think it is better to search and find what you are after currently then follow a given path wich may not be yours ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) As soon as projects move forward you'll die without OOP. It's just silly to do more than a 50 loc script without oop in my opinion. And Thanks for the 'good tips' ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
|
|
|
|
|
Mike Christ
aka snapsunny
Legendary
Offline
Activity: 1078
Merit: 1003
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 03, 2013, 11:10:38 PM |
|
Good luck! I'm still learning python myself. I'm still trying to figure out why I need dictionaries and arrays and junk, but I've otherwise been doing ok, making simple text games with different rooms.
|
|
|
|
naypalm
Legendary
Offline
Activity: 1272
Merit: 1012
howdy
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 04, 2013, 01:05:25 AM |
|
I learned from experience. Now I run a (crappy) search engine with python as the backend.
Protip: Buy a Raspberry pi and get creative!
|
|
|
|
vite (OP)
Legendary
Offline
Activity: 1018
Merit: 1000
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 06, 2013, 12:31:48 PM |
|
Ok, I'm still in the very very early steps, compare it to a baby that is less than a month old programming wise. But I was reading that python has 2.x and 3.x, I think the book I'm learning from is based on 2.x, should I be worried?
|
|
|
|
jackjack
Legendary
Offline
Activity: 1176
Merit: 1257
May Bitcoin be touched by his Noodly Appendage
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 06, 2013, 12:48:23 PM Last edit: August 06, 2013, 01:04:43 PM by jackjack |
|
Not at all Just don't ever look at Python 3 for months
It introduced incompatibilities with Python 2 but they both have the same features
|
Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2 Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
|
|
|
FirstAscent
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
August 06, 2013, 04:04:46 PM |
|
Well, yes, OOP is hard to understand in first place. BUT it is state of the art ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Sort of, I guess. I think Lisp macros are more state of the art than OOP, but Lisp has been around for 55 years. Lisp macros are Lisp functions that you write which are in your program, yet they run at compile time (not run time), and what they do is dissect your macro calls and reconstruct them into whatever code you want, which then runs at run time. And Lisp allows you to do this magnificently, because Lisp code (and Lisp macros) is nothing but an s-expression (nested lists, so to speak), which is essentially the native data structure in Lisp, thus Lisp has a rich set of functions to dissect and construct s-expressions.
|
|
|
|
Abdullah001
Newbie
Offline
Activity: 42
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 05, 2014, 08:38:27 PM |
|
Good decision. Python is different from C or C++ but it’s much interesting and easy to learn. There are some awesome tutorial and online courses on “coursera.org”. Good luck ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif)
|
|
|
|
jackjack
Legendary
Offline
Activity: 1176
Merit: 1257
May Bitcoin be touched by his Noodly Appendage
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 05, 2014, 08:54:37 PM |
|
Good decision. Python is different from C or C++ but it’s much interesting and easy to learn. There are some awesome tutorial and online courses on “coursera.org”. Good luck ![Smiley](https://bitcointalk.org/Smileys/default/smiley.gif) Nice necro-thread Are you gonna spam the whole forum?
|
Own address: 19QkqAza7BHFTuoz9N8UQkryP4E9jHo4N3 - Pywallet support: 1AQDfx22pKGgXnUZFL1e4UKos3QqvRzNh5 - Bitcointalk++ script support: 1Pxeccscj1ygseTdSV1qUqQCanp2B2NMM2 Pywallet: instructions. Encrypted wallet support, export/import keys/addresses, backup wallets, export/import CSV data from/into wallet, merge wallets, delete/import addresses and transactions, recover altcoins sent to bitcoin addresses, sign/verify messages and files with Bitcoin addresses, recover deleted wallets, etc.
|
|
|
Brewins
Legendary
Offline
Activity: 1120
Merit: 1000
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 05, 2014, 09:48:44 PM |
|
codeacademy udacity(introduction to computer science or something) Coursera(an introduction to interactive programmin with python and others.)
|
|
|
|
Sheldor333
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 05, 2014, 10:43:59 PM |
|
Maybe start with something easier, go with C, move to C++ to learn a little bit about object orientated programming. From there you won't have any trouble learning any programming language.
|
|
|
|
BitGoose
Newbie
Offline
Activity: 28
Merit: 0
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 05, 2014, 11:14:40 PM |
|
i have some basic course in python , a pdf file with excersises. U want it?
|
|
|
|
djnocide
Legendary
Offline
Activity: 1164
Merit: 1000
Einsteinium Foundation Board Member and Treasurer
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 05, 2014, 11:37:57 PM |
|
|
|
|
|
Omikifuse
Legendary
Offline
Activity: 1820
Merit: 1009
|
![](https://bitcointalk.org/Themes/custom1/images/post/xx.gif) |
September 06, 2014, 01:03:09 AM |
|
Maybe start with something easier, go with C, move to C++ to learn a little bit about object orientated programming. From there you won't have any trouble learning any programming language.
C, C++ and object oriented stuff easier than python. Nice trolling, dude
|
|
|
|
|