Wednesday, December 31, 2008
Infocomm Career Guide 2008
It provides a pretty good overview of the different career paths, job descriptions and salary expectations within the industry.
Hey everyone!
As this week’s guest blogger, I feel really honored to have this opportunity to share my thoughts and experiences with the SoC community. Thanks Ruiwen and Juliana for inviting me!
Let me start with a self-introduction. I’m James Tan, currently working as a software engineer at Novell’s SUSE Labs in Germany. This is where most of the people responsible for SUSE Linux are based in, though there are many others located in sites all over the world.
Some of you may not be familiar with the SUSE Linux operating system, so let me digress for a minute to give some background. The first version of SUSE Linux started off as the German translation of Slackware Linux back in 1992. Over the years, it grew quickly to become one of the most popular Linux distributions in Europe, particularly for top supercomputers. In 2004, Novell acquired SUSE Linux. It now exists in five main flavours: openSUSE, SUSE Linux Enterprise Server, Real Time, Desktop, and Thin Client. By the way, openSUSE 11.1 was just released recently, so do give it a shot! Too bad that I missed the release party this time round (was on vacation).
Ok enough about that, back to me now. I’m in the SUSE Incubation team and we’re currently working on SUSE Studio – a web service that makes it really quick and easy to create your own custom Linux distributions. I’ll talk more about that in a later post.
Incidentally, our team is hiring. If you’re interested, check out our jobs page for both internship and full-time positions. Alternatively you can apply through the National Infocomm Scholarship (NIS) or Enhanced Learning in Infocomm Technology (ELITe) programmes. That’s how I ended working for Novell / SUSE (through the NIS program). More on that later.
I'm not a fan of long blog posts, so I'm going to end here. Looking forward to your questions and suggestions in the comments!
Friday, December 26, 2008
Tips on how to get into the Game Industry
- You want to challenge yourself with something new everyday in your job.
- You feel a sense of accomplishment when you see your game coming together with materials from your colleagues (be it artists or sound engineers or other coders).
- You feel great when people say your game is a great game and you know they are not lying.
- You want to make people happy.
- You like the freedom of coming up with creative solutions to problems.
- You want loads and loads of money. (Try becoming a lawyer, doctor, dentist, minister or join the finance sector instead. No you won't be raking in John Carmack's pay for a while.)
- You want to play games everyday. (Game development != Playing games)
- You want a slack job. (Game development is hard work! Try getting a rich spouse instead!)
- You think you can make fun games. (Don't think, test it! Fun cannot be defined)
- You want to ride on the bandwagon since the government is giving out free cash. (Save yourself the humiliation of failure from everyone else before you make the jump)
- Build up your portfolio, work on your own games (be it alone or with others) but make sure you complete them. Games which are half-done are almost worthless portfolio pieces because they tell your potential employer that you have no perserverence to sit through an entire project. I.e. why should they hire you if you are going to quit halfway.
- Build up your portfolio further. Make sure your portfolio shows your potential employer what you're interested in. Is it game programming or art or others? I can't emphasize enough how important a portfolio is, which is why I created a separate point altogether to make it important! If it is programming, are you interested in graphics or AI or something else? The more areas that you can cover the better but at the same time, make sure your portfolio is not a never-ending list. Pick the best few of your works and place them there to impress!
- Write a resume to include the great portfolio that you've done in step 1 and 2. If you don't know how to write one, go find out! Don't list your grades if they are terrible (Oh yes, I have seen resumes that do that!). Keep ALL your achievements within 2 pages. If you exceed more than 2 pages, it means you have something less important to take out. If you disagree with me, don't say I didn't warn you. Don't fill up 2 pages for the sake of filling up the space. Don't list your primary school achievements unless they are game development related (I'd be impressed if that were true). Listing your skills and knowledge on a 3rd page (like all the programming languages and software you know) is ok in my opinion but others may beg to differ.
- Keep a good working attitude. (Well this is not really something related to games but I'll try to give tips anyway.) Everyone's attitudes are different, but working attitude can be trained. Work and personal matters are best treated as two different things. Don't be too pushy. Don't be too inconfident. Think "can" before you think "cannot". Learn to communicate well and concisely.
- Expand your network. Alot of students seem to be afraid to go out and meet people. Knowing people in your industry is the one of the best things you can do to get yourself hired. If they know you and they think you're good, you can even bypass an interview! The Singapore Games Industry may be small but with respect to networking, that is actually a good thing. It means that you can get to know almost everyone in the industry. Getting to know people also shows that you have passion for games and it can create a great impression on others! Furthermore, it allows you to pre-select the company suited to your likings. If you know that this company works a certain way and you don't like that, don't bother sending in your resume in the first place since you probably will end up quitting. Networking is another point I can't emphasize enough.
Thursday, December 25, 2008
My christmas gift to you: Modulo, NUS timetable planner
Modules | Title | Brief Reason |
MA1505 | Mathematics I | (Junior College Math) ^ 2 |
CS1104 | Computer Organisation | Basics of computer hardware |
CS3241 | Computer Graphics | Basics of how to produce screen images |
CS2105 | Computer Networks I | Basics of Networking |
CS4213 | Game Development I | Basics of what is in a game |
CS1101/S | Programming Methodology | Escaped this with test but useful |
CS1102/S | Data Structures and Algorithms | I probably do not need to give a reason for this but useful |
CS2103 | Software Engineering | Understanding of Code Structuring |
CS2102S | Database Systems | Understanding of Databases |
CS3244 | Machine Learning and Neural Networks | Understanding of how games can learn |
CS3212 | Progamming Languages | Understanding of how to create a game script |
CS3243 | Foundations of Artificial Intelligence | Understanding of how to make games smart |
CS3220 | Computer Architecture | Understanding of modern hardware and assembly code |
CS3211 | Parallel and Concurrent Programming | Understanding of multi-threaded game execution |
CS4247 | Image Synthesis and Computer Animation | Understanding of Quaternions, Textures and Buffers used in games |
CS3215 | Software Engineering Project | Understanding of team communication |
CS2106 | Operating Systems | Understanding of what runs "behind-the-scenes" |
MA1101R | Linear Algebra I | Useful for 3D games |
ST2131 | Probability | Useful for games with chance or randomness |
GEK1025 | Reading Visual Images | Related: Basics of art styles |
CS2301 | Business and Technical Communication | Related: Basics of how to present yourself and write manuals |
CS3230 | Design and Analysis of Algorithms | Related: Basics of creating optimal solutions |
CS3248 | Design of Interactive Media | Related: Basics of Interactive Media Concepts |
NM2101 | Theories of Communications and New Media | Related: Basics of media theories |
GEK1519 | Science of Music | Related: Basics of music |
SSB2212 | Singapore Legal System: Implications for business | Related: Basics of Singapore business law |
CS4243 | Computer Vision and Pattern Recognition | Related: Basics of what to do with photos and webcams |
CS1231 | Discrete Structures | Not apparently useful if it is useful |
LSM1301 | General Biology | Not very useful for games but had to take it. Interesting though |
PC1432 | Physics Module: Physics II | Not very useful for games but had to take it. Tough |
JS2213 | Popular Culture in Comtemporary Japan | Personal Interest |
LAJ1201 | Japanese I | Personal Interest |
LAJ2201 | Japanese II | Personal Interest |
NM2210 | Aesthetics of New Media | Personal Interest |
CS3108A | Computational Thinking Seminar | Took to fill up my 1 UE point (out of 21 UE points) |
Please post your comments below if you like someone to get this project integrated with an official school system.
(Sorry about the two year old gift. I'm sure you'll like it though.)
Wednesday, December 24, 2008
AudiOdyssey: First accessible game using Wii Remote
The graph is drawn in realtime while you move the Wii Remote. That means that horizontal axis is time and the vertical axis is the value in the scale of g. As you can see it the later half of the graph, the wiimote is held stationary but there is still a force acting on it. This is gravity and the g value is 1. At the start of the graph you can distinctively see there are 3 coloured lines. Each colour represents one of the 3 axes.
http://www.wiili.org/index.php/Main_Page
Tuesday, December 23, 2008
More about Showtime
< ADV > Buy the game! Buy the game! Buy the game!
Monday, December 22, 2008
First Singapore made Xbox Live Community Game Launched!
The latest game that I have worked on is currently breaking the news, and it is called CarneyVale Showtime. In the game, you play as Slinky, a circus acrobat trying to rise up the ranks by performing acrobatic tricks and death-defying stunts through increasingly complex arenas. The game has recently won the Dream-Build-Play 2008 challenge organized by Microsoft, beating over 350 entries from about 100 countries. You may read more here:
http://www.asiaone.com/Digital/News/Story/A1Story20081031-97426.html .
The game has just been launched today and can be bought over the XBox Live Community Games (XBLCG) channel at USD $5 (400 Microsoft points) about SGD $8. The game was made in 4 months with team of 7 including myself.
Go here for more information on the game:
http://gambit.mit.edu/loadgame/showtime.php
And here to see the game on sale:
http://marketplace.xbox.com/en-US/games/offers/00000000-0000-4000-8000-00005855014d?partner=RSS
Come back tomorrow for behind-the-scenes updates about the game!
If you have any comments, please feel free to add them below!
Monday, December 8, 2008
Treat your brand as an author does a story
Inspiration for a brand: Dude, it's Apple
Why Apple: Dude, it's Apple
Alright, yes, I am one of them too; someone who loves to consider himself as an everything Apple man. And I am a new kid in the block, albeit gaining a quick foothold in this Apple world. Now, I realize that Apple has changed my view of the world - the power of a meanie machine and an amazingly efficient sleek looking working style, my world is more colorful from the vanilla, boring, stupid looking drab Windows machine. Yep, I know, I need to stop the ranting for the welfare of the millions still stuck in the vanilla world - curse my arrogance.
Anyways, my point is not to do the comparison of the 2 world's but instead dwell a bit into the power the brand called Apple evokes in me. This is solely my view point and I think the millions of other Apple enthusiasts might endorse me.
So the brand story: everyone loves brands, more the glam and style, the better it gets, although the price tags get a bit too much for our small sized wallet most of the times. Apple however has always been not too expensive yet delivering an amazing experience. Some argue that it's the Jobs Phenomenon, and the company will be thrown to the dogs after him, yet I think its still amazing on how the company has cannibalized a lot of markets through the introduction of 1 single product and take the market by the neck to only dominate it and hit a big gold mine soon after.
Coming back to the brand story, I realize that I have gone to such an extent that I am trusting Apple more than I ever can imagine trusting a product / brand. I recently did a cool calendar, a book and a card from iPhoto that costed me little over 100 bucks. Even without reading through any of the mac forums on the coolness of the product, the finish, the shipping time, and whether there are any local players who can do the same job for me at a cheaper price, I went ahead and purchased the product to be shipped from California, This tells 2 things: 1. I am foolish, lazy as the word lazy can be defined and just wanted to get my job done; 2. I trust Apple as a brand.
Yes, I am lazy but I think it is more of factor 2 that overwhelmed me than 1.
Last summer, I was in a branding workshop for my company Result with a brand guru named Thomas Gad, the man behind Nokia - Connecting People, and the author of books like 4D Branding and brand mind space. And his concept of branding is simple - "treat your brand as an author does a story" - cannot get more spot on! After all branding is an emotional process, it's more of buying the emotion than the brand / product. And it seems that Apple knows how to stir up the right emotions in its cult like following.
- Failure to identify and articulate a compelling set of brand values
- Failure to express the company's mission and vision meaningfully
- Failure to help employees understand how their jobs have an effect on the brand
- Failure to motivate employees to become active ambassadors for the brand at all times
- Lack of know-how in the basics of branding at the operational level
- A silo mentality within company divisions that wrecks cooperation on building the brand
- Managers' resistance to changes that would benefit the brand
- Lack of resources to make changes in how the brand is presented to customers
- Lack of processes and tools that would make good branding automatic
- Unwillingness to carry out the adjustments recommended by market research and customer feedback
"Please show your passport sir"
Warning 2: Not a film review about Jason Bourne. Common, everyone loves Mr. Bourne
I sometimes realize and question myself who exactly am I? Am I an Indian? A Singaporean? A Swede? Nah, and none of them seem to be right. I am practically a mix of a lot of different cultures and thoughts that I sometimes feel that I do not typify a community and hence, I have no identity as such. In short, do I associate myself as an Indian? Or as an individual with Indian roots but Western thinking?
Let me dwell a bit deep into the phenomenon of identity. When you gain an international perspective, you tend to mimic a lot of different things (both good and bad) from different cultures and ways of thinking, that you question your beliefs on which you were raised. You realize there are lot of places where Indian beliefs and culture is ahead compared to the Western society, and vice versa. However, I do not think there is anything wrong in being international, on the contrary, I think in this globalized society, its awesome to be international, be more tolerant and open as opposed to being stuck in 1 culture and 1 mind set. However, on looking back on how I have shaped and changed in the last 3 - 4 years, I realize that I am slowly losing my Indianess and going towards being more international. Mind you, India as a country is globalizing like crazy and the affluent Indians are more westernized than you can imagine. However, when you generalize the nation as such (with the aam admi ie. the commoners), the average Indian is still considered to be very religious, not very tolerant to other beliefs , strict dogma rules his life and is more often than not trapped in his / her own mind set. However, this is slowly changing and Indians are slowly but surely gaining an international perspective on how different cultures can bring in a lot of good.
And in a country like Singapore thats practically an amalgamation of different ethnicities, there is always this question of "what" is a Singaporean. As Singaporeans, do you think you suffer from an identity loss - especially when you come from a family with parents representing different ethnicities? Also do you think you can probably go and live your ethnic country although you have been born and raised here?
On a personal note, quoting my boss / mentor Ola, he keeps telling me that I am a little bit too western to be an Indian; I know for sure I am not very Singaporean and neither am I very Swedish ( i am not nice as they are for starters, hello?) and so who am I? And if I go back to India say five years from now, god knows how much more Indianess I would have lost. So the question is will I gel into the culture? Will it be a welcome change to go back to India, settle down and make my own life there or have I moved so much away from the nation and its culture, that I would probably feel awkward, or worse, alien to my own nation that I will have to find my own identity outside India? Hmph, that is quite strange to think about but I think only time will tell.
P.S. You might want to read more of this and this.