Home › Forums › Chat Forum › Teaching yourself how to code
- This topic has 62 replies, 37 voices, and was last updated 3 years ago by DavidB.
-
Teaching yourself how to code
-
CougarFull Member
i dunno, I fubared a linux build with a misplaced chmod statement. meant to change permissions in a folder, did it on the whole OS….
Years ago on a DOS machine,
cd temp del *.*
… except I typoed the directory name. Fired both commands back-to-back without looking at the screen and wiped the root directory.
Realistically yes, the risk of “trashing” a machine is low. But even so you might have app crashes, lockups, have to reboot or buttoning the device even… Using your daily driver as a development environment isn’t generally considered best practice.
look at setting up a virtual machine on your current machine.
If it were me I’d look at setting up Linux Subsystem for Windows. But that’s a longer conversation and moot anyway now that the OP has a Pi in the post.
NickFull MemberThis is brilliant, highly recommended
https://www.edx.org/course/cs50s-introduction-to-computer-science
molgripsFree MemberI fubared a linux build with a misplaced chmod statement. meant to change permissions in a folder, did it on the whole OS
Years ago on a DOS machine,
Those aren’t coding problems, they’re administrative blunders that could happen any time you’re using the command line for any job. If you’re using Eclipse or Visual Studio or whatever then that’s a non-issue. As I do most of the time.
CougarFull MemberIt’s still code, would’ve made no difference if I’d typoed it in a batch file or shell script instead of the
C:\>_
prompt.chvckFree MemberI was once (a long time ago) responsible for effectively formatting (rm -rf /) a contractors macbook with a poorly written bash script, that was a fun day. Only time I’ve really trashed a machine through code though.
Personally for Java dev I’d just stick with whatever OS and env you have already and just grab a decent IDE, for me I’d go intellij (community edition is free).
Simon_SemtexFree MemberDesign Tech and Computer Science Teacher here.
Try these:
Year 7 Stuff… scratch.mit.edu
Year 8 Stuff… Microbit.org
Year 9 Stuff… smallbasic.com
Fun Stuff… https://hourofcode.com/uk
Good luck
MackemFull MemberI wouldnt bother with Java for mobile apps. Kotlin is much nicer if you want to be Android specific – or even better try Flutter / Dart for cross-platform.
mahowlettFree MemberAgree with most of Halorics post but for Gods sake don’t learn R as a first language, written by non-programmers for non-programmers, and 99% of the libraries and code out there are appallingly bad. Learn something that will at least give you a clue about what decent programming involves first. Oh and be careful about saying you do ‘data science’, there’s a lot of guys doing that right now as it adds 20%+ to your salary, but there are a lot of bad developers (mostly statisticians with no real world dev experience) doing it and HR departments the world over are bound to catch on soon 🙂
Simon_SemtexFree MemberI love this forum….. LOL!
Pretty much every thread that starts of with “I’m kinda slightly interested in learning about….. I’ve never done it before and I’m not very confident….. what would you recommend” ends up with 5 members of the “old-guard” recommending dropping a gazillion £’s on some designer “watchamacallit” they saw on Top Gear or The Gadget Show.
According to this forum…..
Beginners motorbike = Ducati 1098
Beginners guitar = Gibson 58 Les Paul
Beginners Toaster = Hatco Toast King conveyor
Beginners MTB = Specialized S-Works Turbo Levo SL CarbonChrist! Keep it simple!!!! The poor bloke is just dipping his toe in the water.
Try some block-coding (Scratch) until he gets the hang of sequence, selection and iteration and then move onto Text based languages eg (Small Basic) where he will learn a bit about syntax.
Microbits are cool. Python is cool. Raspberry Pi’s are cool BUT
Walk BEFORE YOU CAN run!
mogrimFull MemberI wouldnt bother with Java for mobile apps. Kotlin is much nicer if you want to be Android specific – or even better try Flutter / Dart for cross-platform.
This. Java is no longer the main language for Android development. AFAIK if you want to develop an app for the iPhone you need both an iPhone and a Mac; for Android you need an Android phone and any home computer (Mac/PC/linux). (Yeah, I’m sure in both cases you can emulate your phone/tablet, but there’s nothing like having the phone in your hand running your app to make you feel good 🙂 )
There’s a Kotlin for Beginners course on Udemy – it’s not free, but they have cut-price offers on a regular basis, particularly if it’s the first course you’ve done with them. (I’m currently doing a Javascript course with them, and it’s well put together and cheap). Looking at the course content it seems pretty good as a starter course:
DavidBFree MemberI agree with Mr Semtex google codecombat and actually have some fun learning.
molgripsFree MemberTry some block-coding (Scratch) until he gets the hang of sequence, selection and iteration
Those things are trivially simple though, IMO. The hard part of coding is understanding all the systems surrounding whatever you want to do. It took me ten minutes to explain a for loop to my Mrs, a lot longer to explain object orientation and I’m not sure when she’ll be ready for Maven and Git.
Simon_SemtexFree MemberLOL… Well done Molgrips.
OK…. Crack on then. Here is the handbook for “Flappy Bat.” Its a basic introduction to Block Coding using Scratch.
http://www.standrewspaisley.com/uploads/6/0/2/3/60230905/1467121834-flappybatworkbookpreviewfull.pdf
My challenge to you is follow the instructions on the attached 53 pages. See how long it takes you to work out the deliberate mistakes designed to promote learning.
Why don’t you create the Flappy Bat game….. (sure its trivially easy and well, Year 7’s do it so how hard can it be!!!!)
You could always post a link on here to your Flappy Bat game when you have completed it and we can all play it.
Go on then! I DARE YOU!!!!
TiRedFull Membergo for python. Nice language relatively straightforward. Leads down the route of “analytics”. Can then use other higher level analysis engines.
Once you get stuck you can always type in google “How do I do X in language X”.
normally I search with “X insert problem”
X = SAS/R/PYTHON/…Now faster than looking in a book. Pulling the COVID data off the gov website using API for the first time was very satisfying. Bash it into shape run a few analytics and plot the results.
Simon_SemtexFree MemberThere you go Molgrips…..
Here’s the website you need…
Click on “Create” on the top of the screen and get started.
Let us know when you have finished. Takes Year 7’s about 18 lessons of 1 hour a week to do this.
I’m sure you wont take as long as that!
OK….. Let’s set a target…… submit your work by 5pm Friday 22nd Jan or I start a thread called “Molgrips is a big poo poo head.”
The clock is ticking…..
whitestoneFree MemberThe command line is a scary place if you don’t know what you are doing.
…
It’s even scarier when you do!!
I messed up a MySQL database when I typed something similar to the following:
update members set given_name=’Beverly’ where id-18542;
A good job I’d done a backup about an hour before and could get most of the correct data back in place.
eyestwiceFree MemberI’d love to agree but it’s not quite that simple.
Are you targeting Android or iOS?
ETA: I replied at the bottom of page 1 like a noob. So ignore this entirely as its way out of sync.
/facepalm/
Rubber_BuccaneerFull MemberBut then there’s all the other crap which takes up most of my days: reading specs, writing tests & documentation, the tedium of repairing the constant churn of libraries being deprecated and broken, debugging etc.
All that plus preparing quotes for work that never happens and actually having to write the specs and more is why I don’t do that for a job any more.
gruffjFree Memberhttps://learnpythonthehardway.org/python3/
This is how I started. I started working as a full time software developer roughly 12 months later.
The strengths of this book are the simplicity that it explains core programming tasks and fundamentals, and the focus on repetitious typing and error spotting that needs to become second nature. Bonus points for Python being a truly excellent all round language.
Once you have finished this book, you would be in a much better position to choose a framework or platform specific course to suit your software ambitions.
eyestwiceFree MemberFind a python or Javascript course online. Bash through it quickly. Then try and write something using the whole entire internet as your resource, because only when actually building something will you really learn.
Both languages are generic enough to give you a good start, don’t require complicated installations nor expensive editors, and are the current darlings of *scripting* languages.
If you then *really* want to learn to write software, there are some fundamentals to study. But for the odd app or website, you should be able to rely on your Python and JS knowledge to cobble things together.
kennypFree MemberIf you are staring completely from scratch I’d avoid things like Java and begin with Python. It’s a fairly straightforward introduction to coding, but a powerful enough language you can do plenty with.
Worry about mobile apps and the like once you’ve got to grips with the basics (and a bit more).
DavidBFree MemberThis may be of use
https://www.theinsaneapp.com/2021/01/free-programming-books.html
The topic ‘Teaching yourself how to code’ is closed to new replies.