DY, take a look at this link, in particular: https://code.org/athletes
I assume he likes sports like you do. That is an Hour of Code lesson based on sports (specifically basketball). It is designed to take about an hour for someone completely new to programming. It teaches how programming logic works (if..then). There are also a couple situations where it is easy to forget to do something important which will then have him 'debug' the problem.
It doesn't require typing at all, just dragging blocks around. At the end, he can create his own 'custom' game with the blocks provided and share it with his friends to play on their phones and such.
There are other lessons available here: https://hourofcode.com/us/learn
There is a filter on the left side. If he wants to do one where he types, there is a filter for that called "Language". Choices are Blocks, Typing, and Other.
If he really enjoys things like these, then he has an interest in coding and should be excited by getting an Arduino/Netduino/etc. Once he gets used to that, he can even start to branch out and write simple things for his phone.
It is important for him to know that no one really learns this stuff alone. We are all building on the backs of giants so he needs to know that it is ok to ask questions. Also, where to go when he has questions (i.e. places like here, Stackoverflow, <site that="" specializes="" in="" language="" domain="" he="" is="" writing="" for="">, etc.).
I assume he likes sports like you do. That is an Hour of Code lesson based on sports (specifically basketball). It is designed to take about an hour for someone completely new to programming. It teaches how programming logic works (if..then). There are also a couple situations where it is easy to forget to do something important which will then have him 'debug' the problem.
It doesn't require typing at all, just dragging blocks around. At the end, he can create his own 'custom' game with the blocks provided and share it with his friends to play on their phones and such.
There are other lessons available here: https://hourofcode.com/us/learn
There is a filter on the left side. If he wants to do one where he types, there is a filter for that called "Language". Choices are Blocks, Typing, and Other.
If he really enjoys things like these, then he has an interest in coding and should be excited by getting an Arduino/Netduino/etc. Once he gets used to that, he can even start to branch out and write simple things for his phone.
It is important for him to know that no one really learns this stuff alone. We are all building on the backs of giants so he needs to know that it is ok to ask questions. Also, where to go when he has questions (i.e. places like here, Stackoverflow, <site that="" specializes="" in="" language="" domain="" he="" is="" writing="" for="">, etc.).
Also, if he is dead set on learning how to make a webpage, this is my favorite free tutorial: http://htmldog.com
All that changed in September, when Google gave their translation tool a new engine: the Google Neural Machine Translation system (GNMT). This new engine comes fully loaded with all the hot 2016 buzzwords, like neural network and machine learning.
The short version is that Google Translate got smart. It developed the ability to learn from the people who used it. It learned how to make educated guesses about the content, tone, and meaning of phrases based on the context of other words and phrases around them. And — here’s the bit that should make your brain explode — it got creative.
Google Translate invented its own language to help it translate more effectively.
What’s more, nobody told it to. It didn’t develop a language (or interlingua, as Google call it) because it was coded to. It developed a new language because the software determined over time that this was the most efficient way to solve the problem of translation.
Stop and think about that for a moment. Let it sink in. A neural computing system designed to translate content from one human language into another developed its own internal language to make the task more efficient. Without being told to do so. In a matter of weeks.
Let’s say we train a multilingual system with Japanese⇄English and Korean⇄English examples. Our multilingual system, with the same size as a single GNMT system, shares its parameters to translate between these four different language pairs. This sharing enables the system to transfer the “translation knowledge” from one language pair to the others. This transfer learning and the need to translate between multiple languages forces the system to better use its modeling power.
This inspired us to ask the following question: Can we translate between a language pair which the system has never seen before? An example of this would be translations between Korean and Japanese where Korean⇄Japanese examples were not shown to the system. Impressively, the answer is yes — it can generate reasonable Korean⇄Japanese translations, even though it has never been taught to do so.
https://medium.freecodecamp.com/the-mind-blowing-ai-announcement-from-google-that-you-probably-missed-2ffd31334805#.xsx2jpr0d
Neural networks and machine learning are things I've never messed with before but that is still really cool.
I have. They're ... still a lot of probability. I'm glad they're seeing commercial use again though. But they've been the downfall of many because of their ... unpredictability.
Hopefully pushes more funding into AI area's though.
Hopefully pushes more funding into AI area's though.
How do you guys go about learning programming languages? Do you just come up with pseudo code and then find what tools the programming language has that will allow you to implement it? Is there a general road map of learning you guys found works best?
By Dark PhaZe Go To PostHow do you guys go about learning programming languages? Do you just come up with pseudo code and then find what tools the programming language has that will allow you to implement it? Is there a general road map of learning you guys found works best?I just pick something interesting to me I want to do and create it (or at least start) in whatever language I want to learn. I tend use the language's home website for general tutorials and go to StackOverflow when I get stuck.
I'm a nerd so my usual learning projects are character creators for the various tabletop games I play. It requires learning how to make a UI, creation and management of objects, inheritance, and (usually) non-trivial "business" rules that interact with each other. That's a lot of ground to cover so it works out well.
Would you mind showing an example of one of these creators just so I can get an idea of it? I'm a writer myself so this would be a useful project for me to undertake as well.
By Dark PhaZe Go To PostWould you mind showing an example of one of these creators just so I can get an idea of it? I'm a writer myself so this would be a useful project for me to undertake as well.Sure. None of them are complete, though. haha
Chronicles of Darkness Merit Calculator: I used this to learn the Google Web Starter Kit and the Material Design Lite component library. Did way too much in javascript and never bothered to break it out into separate script files to make it easier for people to scan through. Code in action
Mutants and Masterminds Character Builder: Learned more about working MVC and a little bit of test driven development in this one. Half-baked, though. Also, used the Auto-mapper tool to help with domain-to-client and vice-versa binding. The link is a downloadable zip file. The source is saved on visualstudioonline.com which doesn't allow for free public browsing of code, apparently.
There is also the User Tag Associater I was working on to help organize people here with board names, gamer tags, and multi-player games owned (and their platform) but I stopped partway through it. Need to get back at it again. Especially since there are some big changes I'm sitting on but haven't checked in for months because they would break the build until I finish them.
Code in action.
Code in action.
I think I also did some dependency injection in the Mutants and Masterminds project using a library called AutoFAC but I won't pretend like I understand how to use it well. It does make it easier to unit test the different layers of the app independently of each other, though.
By Dark PhaZe Go To PostAre the numbers supposed to change on the merit calculator?It isn't very obvious how it works, partially because of my UI and partially because you may not know the problem it is trying to solve.
This app is trying to make it obvious to the user what Merits their character qualifies for. Pre-reqs for a Merit can include Attribute levels, Skill levels, whether a Skill has a Specialization (the slider next to each one), and/or what other Merits have been taken (again, marked by the slider next to each Merit).
As the user of this app fills in their Attribute, Skills, and Merits, the Merits box will add/remove Merits so that it only shows what they qualify for.
Oh, and each supernatural template has their own unique Merits, too. You can choose which one by clicking the hamburger icon or the links at the top right (if the window resolution is high enough to display them).
I made this because there are like over a hundred merits and flipping through the books to find which ones you can take is tedious.
Wee, about time for some of this stuff: https://mathiasbynens.be/notes/es-regexp-proposals
A proposal adds support for named capture groups, enabling more readable and maintainable code.
const pattern = /(?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2})/u;
const result = pattern.exec('2017-01-25');
// → result.groups.year === '2017'
// → result.groups.month === '01'
// → result.groups.day === '25'
Anything to make regular expressions more readable is good, in my eyes. Them being so hard to parse and understand easily is the biggest reason I try not to use them unless I absolutely have to, tbh.
By Kibner Go To PostAnything to make regular expressions more readable is good, in my eyes. Them being so hard to parse and understand easily is the biggest reason I try not to use them unless I absolutely have to, tbh.Same. very same.
I did not design this database well enough to make doing a usage report on claims easy to write. I guess things like this is one of the reasons it normally takes a team of people a couple years to write a good claims system. Oh well.
By Kibner Go To PostI did not design this database well enough to make doing a usage report on claims easy to write. I guess things like this is one of the reasons it normally takes a team of people a couple years to write a good claims system. Oh well.There's a million scenarios and reports you won't think of creating when making the system.
JetBrains released a Toolbox to automatically keep all products you bought from them updated. Or force them to be a particular version. Or just pick some major revision you want. Useful for anyone who uses their stuff (like me because ReSharper is awesome).
As someone who is new to this and only really had exposure to reading SQL code because of my office job, what's the best language to learn to code? What's the most popular or most used one? Trying to determine which one is the go to for mobile app development, basically. Thanks!
By Haz Go To PostAs someone who is new to this and only really had exposure to reading SQL code because of my office job, what's the best language to learn to code? What's the most popular or most used one? Trying to determine which one is the go to for mobile app development, basically. Thanks!The first page has a lot of recommendations on this topic, I'd recommend reading the few posts and start there.
By reilo Go To PostFunctional programming is a real skill to learn. There's many languages you can learn it with, too, it doesn't need to be Javascript. Python, Haskell, etc.
Also, for Javascript, http://nodeschool.io/ is a good one because it has a lot of "core concept" classes, including a Functional Javascript class.
I'd also argue that a core competency of any good dev is knowing how to master the terminal, and yes, including a straight up text editor like vim, because chances are you'll have to do dev ops one day on a server and you can't rely on an easily accessible text editor to make changes. http://vim-adventures.com/ is a good and fun little site for learning vim.
By Kibner Go To PostLike Reilo has mentioned a couple times, Python is probably a good place to start. Especially since it enforces some good aspects of code style. It has been around for a while so it has lots of support.
The best thing to do when learning or trying to improve is finding something that interests you and making it (or at least, attempting to). It is the best way to stay motivated and will also give you a goal to aim for. It can be something like a way to automate something you and/or your friends do manually (like that character ability pre-requisite checker I linked above) or developing an AI to play against in some game (could even be a board game).
If you like math, Project Euler is a good way to develop and implement algorithms in a performant way. There's also CodinGame to build up some skills.
By Haz Go To PostAs someone who is new to this and only really had exposure to reading SQL code because of my office job, what's the best language to learn to code? What's the most popular or most used one? Trying to determine which one is the go to for mobile app development, basically. Thanks!In addition to what Reilo just linked, I would learn how to code in general before taking on a mobile app. There's a lot of basics you need to get down first before jumping straight into the tangled nest that is native mobile app development.
If you want to learn Python, here is an editor that should help you get started. This particular editor is made with newbies in mind.
Oh, hey, this site was just linked to me by a friend and it seems interesting: https://javascript30.com
Build 30 things in 30 days with 30 tutorials
By Kibner Go To PostOh, hey, this site was just linked to me by a friend and it seems interesting: https://javascript30.comReally need to up my java script game. But it's literally my least favorite language :|
By giririsss Go To PostAlso, i use PHP storm from jetbrains. It's good. Probably the best php IDE i know of.That and their Python, Ruby, Web, SQL, C++, iOS/macOS, and Java IDE's all are based off the same base IDE: IntelliJ IDEA. They are working on a version that supports .Net stuff as well as one tailor made for Go, which will be grand. This is in addition to an IDE for making your own DSLs (which I will probably never do) and an amazing plugin for Visual Studio called ReSharper, which tries to bring over as many features from IntelliJ IDEA to VS as possible.
ReSharper is how I found them and I really liked much of what they offered so I ended up getting their complete package of stuff when it was on sale 1.5 years ago. Some of the best money I have spent, tbh.
IntelliJ isn't theirs though, is it, Just the IDEA flavour?
Because i'm sure Andoird Studio is based on Intellij too...
And here's where i realize that Android Studio is just a Android flavor of IntelliJ IDEA.
Because i'm sure Andoird Studio is based on Intellij too...
And here's where i realize that Android Studio is just a Android flavor of IntelliJ IDEA.
By giririsss Go To PostIntelliJ isn't theirs though, is it, Just the IDEA flavour?Yup. :)
Because i'm sure Andoird Studio is based on Intellij too…
And here's where i realize that Android Studio is just a Android flavor of IntelliJ IDEA.
It was a brilliant move of JetBrains to use Google to expand their userbase like that.
By Dark PhaZe Go To Posti'm learning exclusively with java at the moment, using netbeans ideThat's not a bad one at all. It's what I started with, too. I just like JetBrains stuff more. NetBeans is definitely one of, if not the, best free Java IDEs.
By giririsss Go To PostReally need to up my java script game. But it's literally my least favorite language :|You need to give ES2017 a go.
By Dark PhaZe Go To Posti'm learning exclusively with java at the moment, using netbeans ide
By Kibner Go To PostThat's not a bad one at all. It's what I started with, too. I just like JetBrains stuff more. NetBeans is definitely one of, if not the, best free Java IDEs.Net beans is a really good IDE. But it sorely need a visual update.
But java is a good learning language.
one of the inputs to the command was entered incorrectly and a larger set of servers was removed than intendedhttps://aws.amazon.com/message/41926/
Someone took down the internet with a typo.
By reilo Go To Posthttps://aws.amazon.com/message/41926/I honestly expected something like this to have caused the issue. My personal theory was something that was in testing was pushed out.
Someone took down the internet with a typo.
I mean. Shit happens, right? As many error checks as you put in, it still comes down to humans.
Sucks for them. But w/e.
It's sort of telling how much of the internet in the west relies on AWS though. I don't know anyone who doesn't use them or Azure.
Sucks for them. But w/e.
It's sort of telling how much of the internet in the west relies on AWS though. I don't know anyone who doesn't use them or Azure.
I hate threaded programming with passion.
By Dark PhaZe Go To Posti'm learning exclusively with java at the moment, using netbeans ideRemember Netflix being decent ide as a student but remember us using Eclipse all the time which felt much better and "proper". Haven't touched Java in years though.
By Suen Go To PostI hate threaded programming with passion.Eclipse is still around. But i think with Android moving to IntelliJ a lot of people have too. Or ... new people.
Remember Netflix being decent ide as a student but remember us using Eclipse all the time which felt much better and "proper". Haven't touched Java in years though.
For those who code for a living, do you guys mostly work in the web development side of things? Did your school/learning phase prepare you for the sort of stuff you'd end up working for on a living or did your first serious software jobs just throw a book at you and say "learn fast".
By Dark PhaZe Go To PostFor those who code for a living, do you guys mostly work in the web development side of things? Did your school/learning phase prepare you for the sort of stuff you'd end up working for on a living or did your first serious software jobs just throw a book at you and say "learn fast".I started in Android. Now doing web dev.
A formal university education will teach you the general principals that transfer between languages and platforms. And as you move further into your course, you will start to pick up more and more things about the languages / platforms you're using.
You won't generally learn "A language" at university, but the stuff you learn, you'll typically implement in a language.
You'll start to learn more and more about the given language and architecture on the job. I knew / what a rest API is from my time in university. I'd written some basic ones in university, and integrated with them, but only on a superficial level. It's a huge part of my job now. And i'm writing large scale commercial ones. In University it was ASP, on my job it's PHP.
Through an internationalisation course at university, i knew the general theory of how you make a program / site translatable. All the locale rubbish. Even did so for a project at uni. Just completed the internationalisation of our portal this week, and it's the first one the company has ever done. Took me a little bit to get my head around how you do it PHP (had only done it in a .net environment before), but the theory is the same.
There are a ton of quirks of any given platform and language. But "software engineers" can largely move between them. There's a learning curve, but most employers expect that if you were upfront and honest in your interview.
Also, most companies won't give you a book. They'll expect you to learn while you familiarise your self with the code base, and googleing shit you don't understand.
Welp, I had a giant post typed up and submitted but gremlins ate it and won't give it back. Will type up a much shorter version in a bit.
By Kibner Go To PostWelp, I had a giant post typed up and submitted but gremlins ate it and won't give it back. Will type up a much shorter version in a bit.That reminds me to implement localStorage to save posts per thread before you submit, but I think it wouldn't have saved you in that scenario :-\
I mostly work in web development nowadays. Not quite a full-stack developer as I do precious little at the OS level.
My schooling at uni did not include web development. I took Computer Science with a scientific concentration there. It was more about learning the theory behind programming than applying it to any business endeavor.
The only specific languages they taught were Java, SQL, and assembly. The only tools they taught us how to use were JGrasp (a really terrible Java IDE), Wireshark, and some basic console commands for Windows and Unix.
They focused more on things like design patterns and object oriented principles. Things that you could take to most languages you would be likely to use. I learned how to learn.
The only real bone they threw to preparing students for the business world, as opposed to the academic, was a class that was part of the business concentration path. They brought in a real-world business type problem (usually a web app of some kind) and students had to build it.
They were split up into teacher-assigned teams of 3-5 people. There were several milestones in the project. At the end of each one, everyone had to give a presentation to the class about where they were. And then everyone had their projects rotated to another group for the next milestone. It taught people real quick how important coding standards and communication among the team was.
My first job literally threw me a book my first day and said to learn it quickly. I was hired by a hospital and the book contained the schema of the database and a primer on how to use the proprietary reporting+query language.
When I worked on my first intranet app for them, I had to learn css, javascript, visual basic .net, and the asp.net page life cycle. It was also only my second time using Visual Studio. The first being my senior project at uni where I learned tool, c++, and how to use source control all at once.
Having to learn new languages, frameworks, tools, and technologies has been common to pretty much every new project I have worked on for each of my jobs.
My schooling at uni did not include web development. I took Computer Science with a scientific concentration there. It was more about learning the theory behind programming than applying it to any business endeavor.
The only specific languages they taught were Java, SQL, and assembly. The only tools they taught us how to use were JGrasp (a really terrible Java IDE), Wireshark, and some basic console commands for Windows and Unix.
They focused more on things like design patterns and object oriented principles. Things that you could take to most languages you would be likely to use. I learned how to learn.
The only real bone they threw to preparing students for the business world, as opposed to the academic, was a class that was part of the business concentration path. They brought in a real-world business type problem (usually a web app of some kind) and students had to build it.
They were split up into teacher-assigned teams of 3-5 people. There were several milestones in the project. At the end of each one, everyone had to give a presentation to the class about where they were. And then everyone had their projects rotated to another group for the next milestone. It taught people real quick how important coding standards and communication among the team was.
My first job literally threw me a book my first day and said to learn it quickly. I was hired by a hospital and the book contained the schema of the database and a primer on how to use the proprietary reporting+query language.
When I worked on my first intranet app for them, I had to learn css, javascript, visual basic .net, and the asp.net page life cycle. It was also only my second time using Visual Studio. The first being my senior project at uni where I learned tool, c++, and how to use source control all at once.
Having to learn new languages, frameworks, tools, and technologies has been common to pretty much every new project I have worked on for each of my jobs.
By reilo Go To PostThat reminds me to implement localStorage to save posts per thread before you submit, but I think it wouldn't have saved you in that scenario :-\I was hoping I could hit "back" and get my post content again to retry but, welp.
By Kibner Go To PostPhaze, did you have certain fears or concerns regarding your question yesterday?
Only question I'd ask you and everyone here what has been their biggest L/cringeworthy memory in regards to coding. Whether it was an assignment, job, hobby thing, or whatever.
https://stackoverflow.com/insights/survey/2017
Good info here. Apparently people value remote work potential over everything but vacation amount. Makes sense. The same amount of people seem to like/dislike Java and it seems quite popular in its use so I'm happy to be focused on it. Most dreaded language: Visual Basic 6. Interesting.