background preloader

Learn to code...

Facebook Twitter

Anybody can learn. Learn to Code with Harvard’s Intro to Computer Science Course And Other Free Tech Classes. I’ll confess, when it comes to computers, I’m pretty much strictly a user. And these days, with the potential freedom and creatively afforded by open access software, the endless hacks for virtually everything, and the availability of free online computer classes, that seems like kind of a lame admission. So I’m tempted to rectify my programming ignorance by pushing through what promises to be a rigorous intro to computer science, CS50, Harvard’s introductory course for both majors and non-majors alike.

The course offers a broad knowledge base to build on, as you can see from the description below: Topics include abstraction, algorithms, encapsulation, data structures, databases, memory management, security, software development, virtualization, and websites. Harvard has made this course available free to anyone---via YouTube, iTunes, and the course page---with a series of lectures filmed during the Fall 2011 semester. Professor Malan has become something of a hot shot at Harvard. This is CS50 OpenCourseWare. How To Hire a Great Developer [FLOW CHART] Thomas Edison once said that "genius" is 1% inspiration and 99% perspiration. In the world of technology startups, that 99% involves a heck of a lot of coding and wireframing. If you've got an idea for a startup, that's great — but odds are that an idea is all you have.

(Well, maybe you have passion and some savings, too.) But you'll need more than that to bring your idea to life — you'll need a developer who can transform your vision into an elegant app or website. If you're just foraying into the land of entrepreneurship, you may wonder where the to even start looking for such a person. And even if you do find a developer, how will you know the extent of his talent and whether he's a good fit for you? From trolling your network to attending meetups, there are myriad ways to meet skilled developers.

Throughout the search, there's plenty of room for missteps, and you might not know the right questions to ask. How to Communicate Your Software Needs to a Developer. Brett Miller is the president of Custom Software by Preston (CSP). For more than 10 years, CSP has impressed clients with highly effective software solutions and teams of multi-talented software engineers. It might seem obvious, but effectively communicating your project needs to software developers is more than just important. It could actually mean the difference between a project that achieves its objectives and one that does not. Having an idea in mind and being able to discuss it intelligently isn’t always enough to efficiently communicate all the critical nuances and required details. I strongly recommend that clients produce a requirements document to facilitate agreement among stakeholders, and in turn, to communicate that information to members of the development team. SEE ALSO: HOW TO: Hire a Designer or Developer Below are some techniques and exercises that can be used to help you document the vision for your software project.

The good news is that you can’t do this wrong. Programming Languages (critique) For many digital products, poor user interface design and UX can sink an app’s fortunes even if the underlying engineering is powerful and innovative. (Remember Color?) But what about the interfaces behind the interface, the ones that developers spend hundreds or thousands of hours interacting with while they build software for the rest of us? Yes, I’m talking about programming languages. Unless you’ve had specialized training, looking at lines of code is like reading hieroglyphs, only less intuitive.

According to findings by researchers from Southern Illinois University, this reaction isn’t just because you’re a n00b: they found that Perl, a major programming language used by untold zillions of developers, is no more intuitive to novices than a language with a randomly generated syntax. Let that sink in. Programming languages are tools, designed by people for a specific purpose. Integer i = 0 repeat 10 times i = i + 1 end for(int i = 0; i < 10; i++) { } That’s not Greek, it’s Klingon.

Learn to code. Teaching kids how to code. By Marshall Brain Quick Intro - If you are looking for a quick and easy way to teach your kid a real programming language, without downloading anything or buying anything, try these Python tutorials. Your kid will be writing and modifying code in just a few minutes. Marshall Brain's quick and easy Python tutorials Let's say that you have children, and you would like to help them learn computer programming at a youngish age.

Let's start with a something important: Every kid is different. The second thing to realize is that real analytical skills often don't start appearing until age 11 or 12 or 13 in many kids, so expecting huge breakthroughs prior to that may be unrealistic. That being said, there are lots of fun things you can try as early as five or six... Games Let's start with a few games. Magic Pen (wait a few seconds to see the word "play", then click the word "Play") Fantastic Contraption Auditorium (Drag the circle-with-arrow-in-it around.

I love Light Bot. Python for Kids RoboMind. Kidsruby.com. Ruby for kids. KidsRuby Teaches Your Children How to Program. You’ve got to start them young, right? With kids picking up on how to use a computer faster than ever before, why not teach them how to program too? Kids Ruby is a piece of software and set of tutorials that teaches kids the art of development, with Ruby as its programming language of choice.

Forget science fairs, your son or daughter could be the next Mark Zuckerberg. The software is available for Mac or PC, or if you’re feeling really adventurous, you can install the KidsRuby OS, which is built on Ubuntu. Now that’s a cool weekend project, especially if you’ve purchased a new household computer for Christmas. Teach your kids how to program The KidsRuby site speaks about programming in a way that kids can understand. When we say “hack your homework” we mean “learn how to write a computer program to help you with your homework”. How adorable is that? With the KidsRuby editor and curriculum, children can jump right in and start creating simple programs in Ruby: ➤ KidsRuby. 4 Free Ways to Learn to Code Online. The Web Development Series is supported by Rackspace, the better way to do hosting.

Learn more about Rackspace's hosting solutions here. Learning to code is something every tech-minded person should try at least once — and the wealth of online courses, many of which are free or surprisingly inexpensive, make learning about programming easier than ever. If you're thinking of picking up C++, Ruby on Rails, Python or Java, these online options might be a good way to test the waters of programming before you fully invest your time and money in formal training or certifications. And if you're a veteran programmer in need of resources for learning new languages, these sites might help you a bit, too. One disadvantage of learning to code through an online platform is the lack of face-to-face interactions with an instructor. In the comments, let us know if you've found other great resources for learning about programming — or other sites for support and Q&A for newer developers. Codecademy - Code in Python.

Codecademy, a website that teaches users how to code through free, interactive tutorials, is launching its first Python courses Monday. Codecademy's website already offers a few hundred exercises in HTML, CSS, JavaScript and jQuery, Zach Sims, Codecademy's 22-year-old co-founder, tells me. Together, 100 million tutorials have been completed by millions of users. Six track courses are being launched for Python on Monday. Why Python? Sims says more users of the site requested Python than Ruby. "It goes nicely as a server-side backend to what many users have learned with JavaScript," he wrote in a post on Codecademy's blog.

Codecademy is asking users to submit additional Python exercises for other users to learn from. Computer Games with Python. Regular Expression Library. Features & Physics Envy. I use the above graph to pick what features to add or improve based on how many customers use them, and how often. This leads to curious but clever decisions.

For example if a hotel booking website has to choose between a minor improvement to the date picker, or a significant improvement to the print stylesheet, then the minor improvement is always a better choice. All features were not created equal, hence the diagram. In addition, just because a feature took months, it doesn’t mean it’s going to be useful.

We suffer from Physics Envy Physics envy is a term that can be used to describe the desire of designers, developers, and project managers to enforce laws on a system that simply doesn’t obey them. Rather than try stare enviously at those who don’t work with such irrationality, let’s see how we can use this to our benefit. Anything in the lower right corner is special. When to Use Quick Wins Customers won’t value all the development you do on a project. Cheat Sheets & Quick Ref Cards for Developers. Learn To Code. Pick the Right Language. Adron Hall is the lead developer of cloud solutions at New Relic. During the course of every coding project, a software developer must make dozens of decisions.

Sometimes this involves solving a problem unique to a particular domain space or a particular architectural issue. Other times it’s about which language is best for a job. That is actually one of the most critical pieces of getting a project right. Too often, languages are applied to a problem space where another language would be better. Here’s a quick look at some of the major business sectors and the languages best suited for each. Financial Sector The financial sector benefits from a number of languages. Another key need in the financial sector is languages that benefit from object-oriented paradigms with strong architectural patterns backed by a lot of guidance from the organizations around the languages.

Top Languages: Scala, Java, and C# Agency, Media, Advertising, and Design Enterprise Applications and Operational Software. Why Learn to Code. I think it is inevitable that we’ll ALL HAVE learn a little code whether we want to or not, if only to be competitive in the evergrowing digital marketing space. I have found that every job that I’ve performed I’ve had to know basic code in order to offer employers and clients the best possible service. It seems that that may be the norm sooner rather than later. As a world that is going more and more toward digital technologies it may be in ALL of our best interest to venture into the world of coding. I am feeling like I may need to venture into this field a little bit more. Take a look at the infographic below to give you an idea of the importance that coding will play in our lives in the not so distant future.

Please Include Attribution to OnlineCollege.org With This Graphic Like this: Like Loading... Anise Smith has a Masters Degree in Internet Marketing from Full Sail University. Aptana Studio 3. The professional, open source development tool for the open web It's ready. It's time. Develop and test your entire web application using a single environment. With support for the latest browser technology specs such as HTML5, CSS3, JavaScript, Ruby, Rails, PHP and Python. We've got you covered! Core Features HTML, CSS, and JavaScript Code Assist Aids in authoring of HTML, CSS, JavaScript, PHP, and Ruby.

Code Assist Deployment Wizard Support for one-shot as well as keep-synchronized setups. Deployment Wizard Support for one-shot as well as keep-synchronized setups. Integrated Debugger Set breakpoints, inspect variables, control execution. Integrated Debugger Git Integration Easily put your projects under git source code control. Git Integration Easily put your projects under git source code control. Built-in Terminal Quickly access a command line terminal for execution of operating system commands and language utilities such as gem, rake, etc. Built-in Terminal IDE Customization IDE Customization. Google.org. APIs & Developer Products.

WebStorm.