Monday, September 15, 2014

Student Spotlight: Programming for a Non-Tech Job

Meet Andrew!
Meet Andrew, a recent graduate from Intro to Computer Science who started learning programming from scratch with Udacity. Andrew works in marketing and plans to use his new skills at work to automate tasks, dive into data, and make suggestions to traditional practices based on what he finds.

Below, Andrew shares key takeaways and advice for other programming students:

Use What You Learn

Currently, I work in marketing for a vending service company (or in fast moving consumer goods (FMCG)). My role is a very traditional one and does not contain many tasks that revolve around data or a great deal of digital technology.

As I expand my skill set I hope to spend a greater number of hours analysing data and implementing changes based on that data. There does seem to be a lot of routine tasks that could be automated and a lot of data that just doesn't get analysed. Ultimately, the courses I have taken so far have made me a little more confident in suggesting changes to traditional practices.

Think Computationally

Over the past few months I have definitely learnt about the foundations of Computer Science and how to think computationally. Programming encourages you to solve a task by reducing things into smaller problems and then go through them in a logical manner. This is different to the intuitive and sometimes messy thinking that I use in everyday life.

Ask for Help

These courses have taught me to persevere and to not be stubborn and ask for help. I found the forums on Udacity really helpful and there were plenty of Udacians willing to share their thoughts, ideas, and mistakes. On occasions where other Udacians could not answer a query (right away) I would turn to the Udacity Coaches.

Take Advantage of Coaching

I would encourage all prospective Udacians to enroll in the full course experience where you have access to Coaches during each lesson and your own personal Coach assigned to you. I have always found them to be helpful and knowledgeable and they have a very positive way of helping you to realize how close you are to figuring things out.

Coaches will never tell you the answer but they can always talk you through the code you have written and ask you questions about it. This way you always get the satisfaction of knowing that you solved things by yourself with a little bit of guidance.

Whether you want to start a career in tech, or use programming in a non-tech career, check out Intro to Computer Science!

Friday, September 12, 2014

2 Steps to Land a Job as a Software Developer

Software development jobs are on the rise
Software developer jobs are quickly on the rise and we all want to know how to land a job that pays $93,350 a year on average1. The good news is that whether you are an aspiring or self-taught software developer, a recent college graduate, or looking to switch careers, there is enough room for everyone. Here are two quick steps you can take to not only get your foot in the door but also position yourself as a competitive candidate:
STEP 1 | Work backwards: Target job first
With the abundance of online courses, the toughest call is often in making the right choices that will lead to the dream career. What courses do I take and in what order? When the eye is on the prize – the job – working backwards from available positions to interview preparation to demonstrating and mastering skills can help chart a path. Identifying a reliable source of information and learning that is approved by industry experts would be the ideal way to build towards your desired job. Who can better prepare you for the job than employers themselves? Produced in collaboration with AT&T, Udacity’s industry recognized nanodegrees explore job requirements with hiring managers first, and then guides candidates through the creation of projects.  Current nanodegree offerings include front-end web development with more to come.
STEP 2 | Create a portfolio: Tell your story
“Building a portfolio allowed me to tell stories about how I applied my learning, the experiences I gained, and how I brought an idea to life. I didn’t just list off a series of courses I took during my interviews,” remarks Caroline Sun, an associate business analyst in the IT department at Oliver Wyman. The projects Caroline built during an internship and in her computer science classes provided examples to draw upon when answering behavioral questions during an interview. If you have created a project or are simply working on one now, show it off on Github or add it to the Projects section of your LinkedIn profile.

Equipped with these two guiding principles in your job search toolkit, you can now tackle the challenges that lie ahead for a software developer trying to land a job:
Recent vs. Experienced college graduates
In my years of experience as a career counselor, I have often heard recent college graduates’ woes of not being able to compete against experienced candidates. While unemployment rate for recent computer science college graduates does indeed drop from 8.7% to 4.7% in experienced graduates2, the differentiation lies in more than just years of work experience. You can demonstrate to potential employers that you can do the job. By creating a portfolio of projects that showcase your skills, you can move from recent graduate to the experienced category, improving your chances of landing a job.
Lack of confidence: The impostor syndrome
Without a vetted process to learning, the self-taught software developers often experience the impostor syndrome and are hesitant to acknowledge their skills. A validated source like the nanodegree and formal approach helps provide guidance as well as builds confidence in your learning while providing trust in the material.

While you stay on target to gain necessary skills and demonstrate what you can do, the job outlook for software developers remains very promising. Opportunities in the computer systems design and related services industry are projected to keep increasing at 4% annually compared to 1% for all other industries3. A strong commitment to learning, and a guided path to mastering the necessary skills are what you need to present to potential employers that you can and will do the job.

Salwa Nur Muhammad is the Student Services Manager at Udacity. She works on a team to provide quality coaching support for Udacity students taking online courses and prepares them to enter the workforce in the technology industry. Previously, as a Program Director at the Center for Work and Service at Wellesley College, she provided career counseling to students and recent graduates. Salwa received a master’s degree in Technology, Innovation and Education from Harvard University.

Tuesday, September 9, 2014

Should I Learn Swift instead of Objective C?

Develop for the new Apple Watch with Swift

It's no longer a secret. At today’s media extravaganza, Apple announced new iPhones and Apple Watches.

Three months ago, Apple announced a mammoth release of new beta tools for developers: a new version of its iOS mobile operating system, and a brand new programming language called Swift.

Swift had come as a big surprise. Swift is Apple's first new programming language in decades and is designed to replace the old language, Objective-C.

Why is Swift better than Objective-C? Apple explains it succinctly: "Swift makes it easier than ever for developers to create incredible apps." Furthermore, anything you can do in Objective-C, you can do in Swift. The future of iPhone, iPad, and even Apple Watch app development is clear: Swift.

Udacity is hard at work creating an iOS Developer Nanodegree, and Swift will be taught and used extensively throughout. 

Sign up for updates on the nanodegree and we'll keep you posted on how you can take your Swift and iOS development skills to the next level.

Monday, September 8, 2014

Not Just for Noobs: Refresh Your Programming Skills with Intro to Computer Science

Meet Pack!
Meet Pack Heng, an Executive Search Consultant and a recent Udacity graduate from Intro to Computer Science.
Pack has a Masters degree in Engineering in Electronics and Computer Science, as well as a Postdoc in the Architecture of Digital Systems. In his own words, Pack has had “an international journey as engineer, project manager and business development manager from France, the Netherlands to Australia.”
Pack wanted a refresher on his computer programming skills and took Intro to Computer Science, where his final project impressed the Udacity Coaches so much that we want to share more of his story and study tips:

Study Tip: Use Stack Overflow & Forums

I would suggest that you first find your own way to solve all quizzes and problems. Be curious about how you can improve your code to find an efficient solution - sites such as Stack Overflow come in handy. Discussion forums in the Udacity classroom are active and you should participate in them; you can learn a lot there as well.

Apply Your Skills at Work

What I’ve learned at Udacity allows me to better understand and articulate my clients' needs when they want to hire people with computer science skills.

Find the Resource that Works for Your Learning Needs

What suits me about Udacity is the ability to learn at my own pace. I really like that I can learn skills that are relevant to the job market at an affordable cost. The video lectures are taught by experts and are lively, not boring!
If you need to refresh your basic programming skills, check out Intro to Computer Science, where you’ll learn by doing as you build a web search engine and a social network using Python.

Thursday, September 4, 2014

Why Should You Learn Artificial Intelligence?

What’s the first thing that comes to mind when you think of the term “artificial intelligence?” If you’re a sci-fi junkie like me, you might immediately jump to thoughts of Cyberdyne Technologies or Marvin, the paranoid Android. But in reality, artificial intelligence already plays an active role in our everyday lives.

You may have already recognized it in phone assistants like Siri or Google Now. Or you may have identified AI when playing Chess against a virtual opponent, or when playing more sophisticated motion-tracking games with the Kinect™. But did you know that artificial intelligence is also present in Google Translate and spam blockers?

Studying artificial intelligence opens a world of opportunities. At a basic level, you’ll better understand the systems and tools that you interact with on a daily basis. And if you stick with the subject and study more, you can help create cutting edge AI applications, like the Google Self Driving Car, or IBM’s Watson.

Self-driving cars are just one example of artificial intelligence. 
In the field of artificial intelligence, the possibilities are truly endless. It seems the news is frequently filled with stories like Google’s plan to build quantum processors or crowd-funding efforts for robotic assistants like Jibo.

Studying AI now can prepare you for a job as a software engineer researching neural networks, human-machine interfaces, and quantum artificial intelligence. Or you could work as a software engineer in industry working for companies like Amazon to shopping list recommendation engines or Facebook analyzing and processing big data. You could also work as a hardware engineer developing electronic parking assistants or home assistant robots.

And the truly exciting thing is that the jobs for these types of projects didn’t exist 10 years ago! AI is a field that keeps growing and changing, and the jobs you’re studying for now may evolve into something beyond your imagination by the time to begin work in the field.

So don't wait! You can get started with Intro to Artificial Intelligence, an introductory course taught by artificial intelligence legends Sebastian Thrun and Peter Norvig.

Friday, August 29, 2014

Intro to Artificial Intelligence Open with Full Udacity Goodness

Today, we are excited to announce that you now have access to coaching support and can earn a Verified Certificate for Intro to Artificial Intelligence!

This is the class that made MOOC history. It was the first online class to graduate more students in the field of Artificial Intelligence than all other brick and mortar classes combined. This class has touched thousands of students and marked the beginning of what you now know as Udacity.  

Sebastian Thrun and Peter Norvig, your AI instructors

In addition to being a part of Udacity history, Artificial Intelligence is increasingly prevalent in our everyday lives, with uses in a variety of industries from gaming to finance as well as in the state-of-the-art research fields from robotics, medical diagnosis and quantum science. In Intro to Artificial Intelligence, you’ll learn the basics and applications of AI from the experts: Udacity’s own founder, Sebastian Thrun and Peter Norvig, Director of Research at Google.

With the full course experience, you’ll have access to a personal Coach to help you tailor your learning goals and answer any questions that you might have about the course material. After completing final assessment and an exit interview, you’ll also earn a Verified Certificate for your new AI skills.

We’ll see you in class!

Tuesday, August 26, 2014

Google Q&A: Scalable Apps with Java

Why is cloud computing one of the fastest growing fields right now? Why should you learn to develop scalable apps? What’s the best way to leverage Google’s App Engine and Cloud Endpoints?   

Ask the experts!

This Thursday at 9am PT, Google Developers is hosting an “Ask the Experts” Q&A session with Magnus Hyttsten and Jocelyn Becker, the instructors behind Udacity and Google’s Developing Scalable Apps with Java course. 

Magnus and Jocelyn will tell you why you should think scalably, and answer questions from you and your fellow scalable developers.

Ask & vote for your questions here

Tune in here for the show on Thursday, August 28, 2014 at 9am PT.