By Dark PhaZe Go To Postwell shit, any suggestions on how to start becoming fluent in this? I suppose practice just doing everything with the terminal including opening software and what not?Get a good book from O'Reilly. Maybe Smokey can chime in since he's been going through this exact scenario the past year.
By Dark PhaZe Go To Postwell shit, any suggestions on how to start becoming fluent in this? I suppose practice just doing everything with the terminal including opening software and what not?Install a headless configuration of your distro of choice. Or configure your current installation to be headless. Most professional interactions with a server will be done like this, anyway.
I've can count on one hand how many times I've seen a GUI in Linux, and it's usually from me logging on and checking something out from the users perspective if they're reporting some kind of issue.
Faze...check out linuxacademy.com. They have tons of lessons and 8 VMs setup where you can load a whole bunch of different distros to follow along and mess with.
Faze...check out linuxacademy.com. They have tons of lessons and 8 VMs setup where you can load a whole bunch of different distros to follow along and mess with.
By Dark PhaZe Go To Postwell shit, any suggestions on how to start becoming fluent in this? I suppose practice just doing everything with the terminal including opening software and what not?
Uninstall the GUI.
I've had to pick up a bunch of it for this webdev job. And ... i have no access to a GUI on the remote server. So I just learnt.
It can help to look up cheat sheets for whatever distro you're using. There's probably a good one out there.
Your most fundamental thing you'll have to learn is how to install apps from source and manage them where they have the right access to accomplish what you need to do. Ideally, once you get the basics down, learning about Unix permissions and etc is the way to go.
Basically, there'll be very few scenarios where you need root access.
Basically, there'll be very few scenarios where you need root access.
By Smokey Go To Postrm -rf /*You're a bad man smokey.
love and embrace this command
By Smokey Go To Postrm -rf /*Did you name your son Bobby Tables?
love and embrace this command
It really is like learning a new language. I've been in it a year, and feel like I've really barely scratched the surface. VIM, Awk, Sed, etc are entire disciplines.
If you can learn Linux, there seem to be a ton of engineering positions open from my limited search the past few weeks. I actually had a recruiter contact me yesterday, and I spoke with him for about 25 minutes. It's crazy. If you can find a niche in Linux, or just become good at it, you can get some really good positions.
If you can learn Linux, there seem to be a ton of engineering positions open from my limited search the past few weeks. I actually had a recruiter contact me yesterday, and I spoke with him for about 25 minutes. It's crazy. If you can find a niche in Linux, or just become good at it, you can get some really good positions.
One thing that I can't recommend more than anything is to learn a proper text-editor like vim where you can't rely on a mouse. It's almost as crucial as learning the terminal, imo. I hope you've been steadily familiarizing yourself with one, Smokey, and I most definitely recommend that you do as well Phaze. It'll make your interaction with a terminal so much more profound, especially during those times when you have to go in and edit large config files. Understand how to efficiently navigate and progress, copy/paste, etc is vital.
Not to mention setting up your environment where you keep sessions, have cross-resource copy-paste (e.g. from your terminal to your desktop and vice versa) are vital in efficiently managing servers.
Not to mention setting up your environment where you keep sessions, have cross-resource copy-paste (e.g. from your terminal to your desktop and vice versa) are vital in efficiently managing servers.
I cut my teeth on emacs in college, so that is my preference, but I think vim is more popularl. Just, uhh, be careful when looking at discussions between the two; it's like a religious war sometimes.
I don't know the ends and out of vim, but I know enough to do what I need to do for work. It gets surprisingly deep.
Also Screen is your friend especially when dealing with multiple terminals. Well at least it's mine.
Also Screen is your friend especially when dealing with multiple terminals. Well at least it's mine.
Spend some time learning about different shell prompts as well. zsh vs bash and what makes them different. I prefer zsh for its customizability and community support. And again, it's all about making your terminal life more efficient.
I keep a set of .dotfiles in github that I can then access and provision and commit my preferences to over time, so when I am working from my personal laptop or my work laptop my developer environment is the same and I can keep them in sync using a wipe.sh file to copies all of the preferences over to my user's root .zshrc file.
I keep a set of .dotfiles in github that I can then access and provision and commit my preferences to over time, so when I am working from my personal laptop or my work laptop my developer environment is the same and I can keep them in sync using a wipe.sh file to copies all of the preferences over to my user's root .zshrc file.
I'll definitely jump into Vim instantly. Looking into it seems like the one thing I've always wanted but never knew about. The mouse is an enemy during heavy text editing.
By Dark PhaZe Go To PostI'll definitely jump into Vim instantly. Looking into it seems like the one thing I've always wanted but never knew about. The mouse is an enemy during heavy text editing.http://vim-adventures.com/
You don't want to use the mouse, eh? How about pairing that up with a keyboard where you never need to leave the home row: https://www.amazon.com/Happy-Hacking-Keyboard-Professional2-Black/dp/B000EXZ0VC
I just want to say that I don't understand how letters and numbers translate to things happening on a screen and that it all might as well be magic.
I've read and heard many explanations and they don't help.
I've read and heard many explanations and they don't help.
By Jay Whatever Go To PostI just want to say that I don't understand how letters and numbers translate to things happening on a screen and that it all might as well be magic.It's just a set of instructions that hardware tries to follow as best it can.
I've read and heard many explanations and they don't help.
Or did you mean how the low level physics work (which becomes more and more like magic to me the deeper I go)?
Or did you mean the basic logic structures that basically all languages use?
Or something else entirely?
Since you do music, writing a program can be somewhat similar to making a music composition that can be played back through Finale or other music notation software.
Well, this is going to take some time for me to type up. Going to wait to get home because my thumbs are unable to keep up with my thoughts.
There are three main parts to the basics of programming logic.
Operations: Addition, subtraction, and setting the value of a variable. Things you would see in middle school algebra.
Conditional Logic: You compare two values to see if they are equal, not equal, greater than, less than, etc. This will always have a true or false answer. You would then use the answer in an if...then...else statement.
Loops: This is the part that can easily trip people up. A loop is when you perform some set of instructions as many times as it takes until the end condition of the loop is met. You will typically do something to make sure the end condition takes a step towards being met inside the loop.
These are all over simplified explanations but if you are able to understand those basics, you can learn how to use just about any language in the time it takes to learn that language's syntax for those structures.
- Operations
- Conditional Logic
- Loops
Operations: Addition, subtraction, and setting the value of a variable. Things you would see in middle school algebra.
variable x = 3 + 4
Conditional Logic: You compare two values to see if they are equal, not equal, greater than, less than, etc. This will always have a true or false answer. You would then use the answer in an if...then...else statement.
if (x > 4)
then {do something when x is greater than 4}
else {do something different when x is not greater than 4}
Loops: This is the part that can easily trip people up. A loop is when you perform some set of instructions as many times as it takes until the end condition of the loop is met. You will typically do something to make sure the end condition takes a step towards being met inside the loop.
while (x < 10)
do {x = x + 1}
These are all over simplified explanations but if you are able to understand those basics, you can learn how to use just about any language in the time it takes to learn that language's syntax for those structures.
Kibner, I made the code blocks to be `display: block`, fyi. I need to add some CSS so we can have inline code blocks e.g. how Slack does it.
The instructions you create like in the code in my previous post is used to manipulate something called logic gates. These logic gates are how the computer hardware processes the instructions it is given. They can be difficult to explain, so here is a video I found after five seconds of googling:
Now, these logic gates are made up of transistors. A short video on how transistors work:
BTW, the physics can go even deeper than this. Especially when we start talking about RAM and how volatile it is. >:) Let me know if you want to know about that, too.
BTW, the physics can go even deeper than this. Especially when we start talking about RAM and how volatile it is. >:) Let me know if you want to know about that, too.
By reilo Go To PostKibner, I made the code blocks to be `display: block`, fyi. I need to add some CSS so we can have inline code blocks e.g. how Slack does it.Thanks for fixing that and the numerical lists. :)
By reilo Go To Posthttp://vim-adventures.com/
Completed the demo. Recommend buying a license?
Jay, were my posts helpful to you? Is there something you don't understand that I can perhaps explain better?
Starting to use the actual VIM software now...the game moved instantly with use of the movement keys, but obviously that's not something that can happen when just typing text. I assume there's a key or something I press within VIM to activate use of the movement keys and other commands?
Other things you should familiarize yourself with:
Learn what ":" does when it enters you into command mode where you can write/quit/reload/find+replace/etc the file.
Learn how to search when hitting "/" which puts you into search mode.
Learn how to highlight and the difference between V (character highlight) vs SHIFT+V (line highlight). Learn how to find and replace within a highlighted section by doing ":" and then ":'<,'>s/foo/bar".
Learn how to move back and forth a word at a time. Learn the difference when in highlight mode.
Learn to use multipliers to improve your efficiency e.g "SHIFT+V, 10 j" will highlight the next ten rows.
Learn what ":" does when it enters you into command mode where you can write/quit/reload/find+replace/etc the file.
Learn how to search when hitting "/" which puts you into search mode.
Learn how to highlight and the difference between V (character highlight) vs SHIFT+V (line highlight). Learn how to find and replace within a highlighted section by doing ":" and then ":'<,'>s/foo/bar".
Learn how to move back and forth a word at a time. Learn the difference when in highlight mode.
Learn to use multipliers to improve your efficiency e.g "SHIFT+V, 10 j" will highlight the next ten rows.
Use / to search in VIM followed by the term. Press n to get the next result. Shift+N to go backwards.
By Kibner Go To PostJay, were my posts helpful to you? Is there something you don't understand that I can perhaps explain better?
It's above my capability. Thanks though.
By Jay Whatever Go To PostIt's above my capability. Thanks though.No, that just means my explanation wasn't clear enough. If you would like, give me feedback on what doesn't make sense that you wish did. Are you familiar with traditional music notation? If so, I can use that commonality to our advantage.
My brother is 14 and wants to get into programming. Which is dope! I just don't have even basic understanding of fundamental stuff so I don't know how to really help out. (Also, he might hate programming in a month)
Any suggestions for starter stuff?
Any suggestions for starter stuff?
Kibner has made a few posts about it.
I would tell him to not start with anything web based though, just because of the sheer amount of set up involved.
And we basically spent the first page bickering about it.
But here's the real question, What does he want to learn to do?
I would tell him to not start with anything web based though, just because of the sheer amount of set up involved.
And we basically spent the first page bickering about it.
But here's the real question, What does he want to learn to do?
I recommended he get on codeacademy.com and hit the Python course. Is he into mechanical stuff? You can get him an Arduino starter kit ($85) as a Christmas present which will teach him programming and hardware if he's into it.
By giririsss Go To PostKibner has made a few posts about it.I'm taking shots in the dark, but as a 14 year old kid I'm thinking either game design or something that's wildly profitable.
I would tell him to not start with anything web based though, just because of the sheer amount of set up involved.
And we basically spent the first page bickering about it.
But here's the real question, What does he want to learn to do?
By reilo Go To PostI recommended he get on codeacademy.com and hit the Python course. Is he into mechanical stuff? You can get him an Arduino starter kit ($85) as a Christmas present which will teach him programming and hardware if he's into it.Yeah, that's actually what I was thinking of getting him - but I don't want to lose my cool big brother status buying him that in the place of some shoes or something
I would've appreciated an Arduino starter kit over the Limp Bizkit cd my sister thought was cool to buy me at 14.
If he's not even sure he enjoys coding, be sure to do one of the One Hour of Code exercises here: https://code.org/
If he enjoys doing things like that, then it is time to move him into some standard languages.
If he enjoys doing things like that, then it is time to move him into some standard languages.