Feb 28, 2018
Hello!
Ryan is In the Studio Today!
https://www.freecodecamp.org/
Notifications of new show notes and edits are tweeted at: twitter.com/ddhart.
– They’re tagged with #Zentech.
– When what’s said is unclear to me (or I’m unfamiliar with a topic) I tend to quote (” “) verbatim.
– Editor’s comments are delimited by < >
For a couple of months, the audio of today’s show is here. Recent shows are here.
The intro & outro music was by Pentatonix.
Both Paul and Glenn were in the studio today.
Glenn was a bit late coming into the studio because he had a problem with his Canon MX922 printer, He didn’t put the ink cartridge in quite right and it got stuck. He had to call tech support to get it resolved. The printer was under warranty, but he didn’t even have to verify that with them.
The rest of the show was an interview with Ryan Trauntvein who is part of the Github enterprise and he told us what it’s all about. Git is the guts of Github and git is a derogatory word in England that refers to someone who makes stupid mistakes. Github is a website where you can collaboratively work out your mistakes, Paul quipped.
Ryan said Git is a version control system and Github is a host <the website> for version control using Git. It’s a way for 2 or more people working on something, like writing a computer program, to prevent changes made by one person from being lost when another person makes changes to another version of that program.
The old way of doing this is to allow only one person to “check out” a file and work on it, thereby not allowing anyone else to work on it until it’s checked back in. With Git each person can work on their own copy at the same time and, when the file is sent back up to the server, the choice is made about how to merge the two (or more) versions. It’s not just for writing software, it can be generalized for use on many collaborative projects.
For instance, in writing a novel, if 2 people edited a paragraph, Git will highlight changes made by each editor while noting who made which changes. It will then be up to the editors (or project managers) to decide which changes to keep or delete.
Linus Torvalds, creator of Linux, also created Git. When Linux was created, the version control system he used was called Bit Keeper and it was proprietary, so he created Git.
You can create a free account at Github. You don’t need to download anything to your computer, it can be run from their webpage using their editor. If for instance you want to work on a novel, you create a project on the website and proceed to create sections for your chapters. Other collaborators on your project will than have to first create an account on Github and be invited to contribute to your novel. Alternatively, there are desktop applications available that can be used for collaboration. Collaborators can be restricted to work on just a certain portion of the project, like just a particular chapter of a novel.
Many of the projects on Github are open source. Of those let you only look at the contents of the project. Some, however, let you make changes without being formally invited to the project. The changes you make will create a ‘fork’ of the original project and be kept separate from it.
Later, your fork of a project can be submitted to the original project with a ‘poll request’. Those running the original project can then look at the changes you’ve made and make suggestions on how you can improve your fork. Eventually, your fork may be merged with the original project.
Paul mentioned another open source repository called Source Forge.
Github is a for-profit enterprise. If you are creating a non-profit project, Github is free to use, as long as you keep it open to the public. If you want to close it to the public, then you’ll have to pay to use Github.
Paul asked Ryan if musicians could use Github to work on their music. There are a number of music projects, Ryan said. One is called Sonic Pie. Images & 3-D printing models also have their own projects
Paul then asked if Github keeps track of all the changes made on a project. Ryan said there are different ways to go back and compare parts of a project as they’ve changed over time.
A project with plain text is easy for Github to keep track of, but what if the collaborators use something like Microsoft Word to create the content? Ryan said that Github can only display a limited number of formats online, and the rest has to be sent to the collaborators for display on their own computers.
On a related topic, Paul mentioned the meetup event that happened yesterday at Quietech Associates in Grass Valley called the Nevada County Free Code Camp. They have a Facebook group. And you can find them on Github if you search for Nevada County Free Code Camp, where you can see their repository.
There are “mini modules” thru which you can progress when learning programming at Free Code Camp, which is a global organization. There are 3 areas of certification: front-end web development, data visualization and back-end development. The entire free learning experience is covered in 400.
The certifications offered are for skills that are widely used in industry. There are thousands of testimonials from people who’ve gotten jobs after going thru the program.
Paul wondered where the big demand for jobs is, Ryan said there’s a big demand for documentation and, perhaps, back-end development (cloud services).
Glenn said that if you go to freecodecamp.org and click on ‘map’ in the upper right-hand corner, it lists the various projects.
Paul asked what sort of [Github] projects there are for non-profit organizations. Ryan thought that modernizing what they already do would be helpful — things like data visualization or mobile apps. And many organizations need a membership database, Paul added.
Glenn asked how one should prepare themselves to attend a Free Code Camp meetup. Ryan said there’s usually an initial short talk on something like a coding topic or how a company has been using a software product. Then there’s a freeform class where you can immediately start learning and where people can help you thru challenges. <Bring your laptop was implied.>
Paul said you can find various meetups in your area by going the meetup.com and search on your geographic location.
Every Thursday there’s a meeting of Coffee and Code which is put on by the Nevada County Hackers meetup group, a spin-off of Free Code Camp. It’s more of a heads-down working session.
Glenn asked if Free Code Camp is for people who want to develop mobile apps. Ryan wasn’t sure but thought there are a number of people who have that interest. He thought that’s something that will be addressed in the future.
On the other hand, a lot of the design done at Free Code Camp is mobile friendly. The term for that is ‘responsive design‘. This is where the website will display differently based on the device you’re using — it will to fit better if it determines you’re using a small screen. The Zen Tech web site is like that. WordPress, the content management system it uses, makes it display properly.
If you’d like to program apps for the iPhone and iPad you can get the free Xcode developer platform and run it on a Mac, Paul said. It also lets you collaborate on a program with Github using the ‘check out’ ‘check in’ method. If you then want to put your completed app into the Apple App Store, it will cost you $100.
The best way to reach Ryan…
– On the meetup website.
– On Facebook
– On a Github-related chat site called Gitter.
– Or come to one of the meetups.
<Other info about him…
At Github, here and with his picture here.
– On Twitter>
Listeners were invited to write to the guys with questions or comments, even those they’d like to be forwarded to Ryan: zen at kvmr dot org
Paul closed with this thought: Education is when you learn more and more about less and less until you know everything in the world about nothing at all.
Last Updated 4:25 PM 3-1-2018