background preloader

Learning to Code: The Roadmap I Wish I Had Been Given - Jimmy Li

Related:  Programming in Good StyleGame dev

About - Hacker School Hacker School is a free, full-time, immersive school in New York for becoming a better programmer. We're like a writers' retreat for programmers. People come from around the world to spend 12 weeks writing code and growing as programmers. We run three sessions a year, called batches, and each batch has about 60 people. We make money by helping companies hire our alumni. Our pedagogy Hacker School is a "school" in the sense that it's a place people come to learn, but we intentionally forgo many of the trappings of traditional schools. Instead, Hacker School is largely unstructured, self-directed, and project-based. This does not mean that Hacker School is a vacuum. Our environment We've designed Hacker School with one thing above all else in mind: How to make the best place for people to grow as programmers. The atmosphere here is friendly and intellectual, and we try to remove as many obstacles in the way of people's growth as possible. Facilitators Residents Who comes to Hacker School? Press

gamedev - game development, programming, math, art, collaboration written on Wednesday, November 23, 2011 I posted a very brief response to a post on HackerNews yesterday challenging the notion that 8 weeks of guided tutelage on Ruby on Rails is not going to produce someone who you might consider a "junior RoR developer." It did not garner many upvotes so I figured that like most conversation on the Internet it faded into the general ambient chatter. Imagine my surprise when I woke up to couple handfuls' worth of emails from around the world asking me what I did, how I did it, and how I got a job. First, A Disclaimer or Two Please note that this blog post is entitled, "How I Became a Programmer", not, "How You Can Become a Programmer." Also, after consulting with my girlfriend, my total time of dedicated effort to becoming a paid programmer was actually about 12 weeks, not ~10 as I stated in the post I linked to above. My Story: tl;dr In brief: I left the Marine Corps after more than a decade in July 2010. Voila. What I Didn't Do Questions From Email

Three False Constraints Once again, a call goes out to make games more culturally meaningful. I agree very much with the sentiment, but I've always been frustrated with how designers set themselves up for failure due to the constraints placed on the problem. In mathematics, computer science, and physics there is a the concept of a 'hard' problem. What does the inside of a black hole look like? We’ve turned the creation of culturally meaningful games into a similarly ‘hard’ problem. Three false constraintsWhen we talk about making games culturally meaningful we often limit the discussion in three important ways. Single player: By ‘games’, game developers typically mean ‘single player games’. Even worse, the constraints conflict. ...until you break the constraintsYet as soon as you break the constraints, conversation becomes a trivial problem. To the participants in the conversation, this chatter that results is more entertaining than the best writing or acting performed by the top talent in any medium. So...

How to be a Programmer: A Short, Comprehensive, and Personal Summary Debugging is the cornerstone of being a programmer. The first meaning of the verb to debug is to remove errors, but the meaning that really matters is to see into the execution of a program by examining it. A programmer that cannot debug effectively is blind. Idealists that think design, or analysis, or complexity theory, or whatnot, are more fundamental are not working programmers. Debugging is about the running of programs, not programs themselves. To get visibility into the execution of a program you must be able to execute the code and observe something about it. The common ways of looking into the ‘innards’ of an executing program can be categorized as: Using a debugging tool, Printlining --- Making a temporary modification to the program, typically adding lines that print information out, and Logging --- Creating a permanent window into the programs execution in the form of a log. Some beginners fear debugging when it requires modifying code. How to Understand Performance Problems

5 Simple Ways To Improve Game Menus This small article is mainly targeted at hobby game developer. I think that the title menu of your game should receive proper attention, since it is the first screen of your game the user will ever see. And we don’t want our user to start with a strange feeling, don’t we? In this article I will show you 5 really simple ways to improve your title menu without any design skill at all. Assumptions Let us assume that our title menu should feature the following 4 functionalities: Let the user start a game – now that’s obvious. Let the user resume an already started game Let the user view and change some options. Let the user quit the game That are not much possibilities to choose from. For demonstration purpose I chose a really minimalistic one. Many Kudos to Shangyne at deviantart, who made the background image (actually it’s a wallpaper). There is nothing really about this kind of menu. 5 Simple Tips 1. Contrast is important for readability. Not a pleasure to read, isn’t it? 2. 3. Maybe you do. 4.

Where can I find problems - CS101 Short coding exercises in Python and Java. Interactive lessons in Python, JavaScript, HTML, etc. Math problems that usually require programming. Difficult problems from coding competitions. Always copy code examples, and get them running. When alternatives occur to you, try them out. If you just started programming, it's probably too early to start looking for projects to join. Indie Games Webblog How I Learned to Program Programming is, without a doubt, the most mentally rewarding thing I've ever done. Programming taught me that life should be fun, filled with creativity, and lived to the fullest. Programming taught me that anything is possible; I can do anything I want using only my mind. Programming also taught me that learning is fun. I feel extremely lucky to have had the means and opportunity to learn programming early in my life. I have no regrets. So I figured I'd share my methods with you, in hopes that a beginner will read this and get some value out of it. If you don't want to read all this, the important takeaway here is to, above all else, have fun. Install Linux on Your Box While in my own life, I actually learned quite a bit about computers through video games on MSDOS computers--my real learning started the first day I installed a Linux operating system on my home computer. Despite what you may think, programmers don't just "program". Programming is a way of life. Have an Intense Desire Have Fun

how indie gaming is reviving the Britsoft s PlayStation killed Britsoft. We didn't realise it at the time, but it took a cold, technological scythe to the British development community. And Lara Croft, that gloating figurehead of the PlayStation Generation, once viewed as a symbol of this region's success and creativity, should now been read as a harbinger of doom. Because, nothing was ever the same again. Of course, PlayStation didn't destroy the whole business of developing major videogames in the UK – that's still happening, though largely for foreign paymasters. But the era of expensive team-based 3D game production ushered in by Sony's original machine effectively ended the peculiarly British scene of the eighties. Later came the dominant bad boys of the Amiga era - Sensible Software and the Bitmap Brothers - with their hyper-polished, subtly anarchic 2D masterpieces. Except, they're not. Fuelled by vibrant online development communities, indie gaming festivals, and new distribution channels, it is waking up. This is it.

NbK - 17 - the cookbook and pensive way of doing things It's been a while since I was wearing gloves and mixing solutions, but I find myself a lot of times still in a wet-lab mindset when it comes to how I do things. A lot of the daily routines in the lab is center on doing things. Like putting on gloves and mixing solutions. So it makes sense that a lot of information transmission in a lab using a way that is best at his. Why am I rambling on? list_of_numbers = range(0,10) for each number in list_of_numbers: if remainder of number / 2 is 0: keep else don't keep Which motivates you to think along steps that are outline what is happening. [x for x in range(0,10) if x % 2 == 0] Which says the same as the lines above, in a more formulaic way. Ok so that's cool in the end we all want to become better and more efficient at what we are doing. I would find many more examples where I see this kind of thing happening; call them visual, procedural, cognitive, hands-on or whatever way of doing things. So where am I, 723 words after starting to ramble? 1. 2.

2D Vector Graphics for Unity - Become a Good Programmer in Six Really Hard Steps One of the more popular topics here on the GDNet forums goes something like this: "Hi, I just [bought a computer | wrote a simple game | discovered a game engine] and I want to know where to go from here. I'd like to [accomplish some particular goal] eventually. What do I need to learn to get there?" First of all, understand that Peter Norvig nailed this on the head a long time ago: it takes ten years to learn to be a programmer. There's a glut of "learn X in some small number of days" type books out there; there are hordes of blog posts about "how to improve your programming-fu in a few easy ways"; and in general a lot of people come around looking for advice on how to become a whiz with minimal effort. I'm going to change up the pitch a bit. Step One: Suck It Up. For the rest of us, though, there's something alluring about getting Really Good at programming. So the first step to being a really good programmer is to bite the bullet. While you're doing this, pay attention.

More Design Patterns | Writing Serialised Data to a String Instead of a File in C# Instead of writing the serialised data to a file, which can be done using using (Stream s = File.Create("foo.xml")), you might want to have just the string – maybe because you want to send it to a server? You can use the StringWriter class to do so: string data;using (StringWriter stream = new StringWriter()) { xs.Serialize (stream, foo); data = stream.ToString();} Uploading Data to a Server in Unity 3D Unfortunately, you can’t directly upload data to server in Unity 3D. Since you can create POST variables in Unity, you can mainly work with those in your script. A very simple, preliminary implementation could look like this: concierge.php <? NetworkSave.cs Of course, this design allows for quite some flexibility, since it decouples the storage of data from the game logic.