Playing For Good: My Time As A Volunteer Teacher

Giving & Gaming

People volunteer for a wide variety of reasons, especially wanting to help others. But it’s also OK to want some benefits for yourself from volunteering.

Susan J. Ellis, President of Energize, Inc explains that some people are uncomfortable with the notion that a volunteer “benefits” from doing volunteer work. There is a long tradition of seeing volunteering as a form of charity, based on altruism and selflessness. The best volunteering does involve the desire to serve others, but this does not exclude other motivations, as well.

Instead of considering volunteering as something you do for people who are not as fortunate as yourself, begin to think of it as an exchange.

Consider that most people find themselves in need at some point in their lives. So today you may be the person with the ability to help, but tomorrow you may be the recipient of someone else’s volunteer effort. Even now you might be on both sides of the service cycle: maybe you are a tutor for someone who can’t read, while last month the volunteer ambulance corps rushed you to the emergency room. Volunteering also includes “self-help.” So if you are active in your neighborhood crime watch, your home is protected while you protect your neighbors’ homes, too. Adding your effort to the work of others makes everyone’s lives better.

videogames_sam_volunteering_charities_1_v1
Figure 1.

Education

Through my world travels for work and pleasure, I have been exposed to the amazing beauty (and challenges) in the world. I’m so inspired by what is going out outside of my native USA. While I have not directly experienced too much poverty and sadness — my increasing circle of concern in the world gives me much more to think about and care about. Education is of particular interest to me.

Author Jeffrey D. Sachs, called by Time Magazine as “the world’s best-known economist” has advised an extraordinary range of world leaders and international institutions. In his book The End of Poverty, his focus  is on the one billion poorest individuals around the world who are caught in a poverty trap related directly to their lack of access to capital, technology, medicine, and of course education.  His fundamental argument is that “[W]hen the preconditions of basic infrastructure (roads, power, and ports) and human capital (health and education) are in place, markets are powerful engines of development.”

As the UN’s Poverty And Education study shows the advantages that education provides both improve the living standards of communities and contribute to the social and economic development of countries. The education of girls has a further strong and very important effect on the role of women in society. Some of my personal hopes for global change are equal access to education and equal treatment of woman.

Malala Yousafzai (Born 1997) is a Pakistani school pupil and education activist from the town of Mingora in the Swat District of Pakistan’s northwestern Khyber Pakhtunkhwa province. She is known for her activism for rights to education and for women, especially in the Swat Valley, where the Taliban had at times banned girls from attending school. On 9 October 2012, Malala was shot in the head and neck in an assassination attempt by Taliban gunmen while returning home on a school bus. In the days immediately following the attack, she remained unconscious and in critical condition, but later her condition improved enough for her to be sent to the Queen Elizabeth Hospital in Birmingham, England for intensive rehabilitation. Through her long recover and after, Malala inspires (see video below) children, adults, and governments alike with her message of equality in access to education for girls and boys around the globe.

Teaching English In Indonesia

While finishing a fruitful consulting project I saw an opportunity to block out time to volunteer. The needs for the Live Streaming Media Web Application project were clear and the end-date well-defined. I wound down some other projects too. In addition to searching for my next consulting project I looked for volunteering opportunities with an ideal fit. I knew I wanted to teach, work with young adults, and stay in Asia where I was living. There is abundant need for talented teachers; especially those with computer skills. I interviewed with several engagements and ultimately chose to teach English during 8 weeks in Indonesia.

videogames_sam_volunteering_charities_3_v1
Figure 2. Me, Playing games in the classroom

My students were age 13 to 18 with advanced (level 4 of 4) English skills. We met 5 days per week. There was no provided curriculum — a quality I was seeking in the position. I reviewed what they had been learning ahead of me to plan. Then I added in ‘teaching prep’ as a project within my weekly schedule until the day I began. The first day or 2 we broke the ice. The kids are shy, but enthusiastic. Their interest to learn English is genuine. One of the challenges was that students attend irregularly — on a given day the class filled with only about 8 of the 25 students. I learned during my first week that lessons must be modular, so students can participate fully even if they were not present the day before. Our lessons included travel, art, art history, agriculture and more.

Some other lessons;

  • Friend Interviews: Students divide into groups of two. Each student interviews the partner and presents to the class. (Download)
  • Super Heroes: Students learn about famous superheroes, talk about the extensive vocabulary related to powers and abilities. (Download)
  • Game Show: We learn about the basics of game mechanics (a preview to our talk about video games). The students play (once per week) game-show styles games like ‘Family Feud’. That game is a great example of learning vocabulary, team work, and culture (the question-set is very ‘American’).
  • Geography: We discuss Indonesia’s place in the world, Asia, and major continents. Each student chooses a country and completes internet research (and maybe interviews foreign teachers). (Download)
  • Music & Lyrics: Each week we discuss one pop song. Students listen and write any words they hear. Then with the lyrics in hand we listen again 2 times to review new vocabulary. Finally students debate on the meaning of the song. (Downloads)
  • Jokes: The students each told a joke (they are very shy) and I read some from a list. We discussed humor in books, TV, and films. (Download)

I included downloads to some of the curriculum I created. It is all very basic, but perhaps it would be useful to generate more ideas.

Q. Why is 6 afraid of 7?  A. Because 7 8 9! (seven ate nine!) — Probably my only joke that got students laughing.

Videogames

I love games. Playing and making videogames! All students have access to internet and computers at the school as well as basic computer literacy. Because of my background and profession the school facilitators requested some computer-specific lessons. While I have taught game development at weekend courses, universities, and corporate training gigs, I hadn’t taught a group so young. I decided to build a few lessons around theory and then make a practical lesson focused on visual arts. My students love to art and are very proud of their creativity. Creativity is an outlet that the (otherwise quite timid) Balinese society really evangelizes.

Some computer-themed lessons;

  • Computer basics: The Bahasa Indonesia language borrows heavily from English for all technology terms. Students are familiar with most of the key terms. We reviewed web browsing, web searches. Most days we dedicated some time to searching Google and Wikipedia for some light research too.
  • Videogames 1: I created a concise outline based on my Adobe feature article “Intro To Gaming With Flash“.
  • Videogames 2: In groups students created new game art on paper. We scanned the work and added into an existing game engine which I used previously for more advanced programming classes. See video below for a completed game example. Very cool!

 

Balinese Culture

The teaching opportunity in Bali, Indonesia opened me up to the complexity of the Balinese people. The culture of Bali is unique. People say that the Balinese people have reached self-content. It is not an exaggeration that when a Balinese is asked what heaven is like, he would say, just like Bali, without the worries of mundane life. They want to live in Bali, to be cremated in Bali when they die, and to reincarnate in Bali.

It does not mean that the Balinese resist changes. Instead, they adapt them to their own system. This goes back far in history. Prior to the arrival of Hinduism in Bali and in other parts of Indonesia, people practiced animism. When Hinduism arrives, the practice of Hinduism is adapted to local practices. The brand of Hinduism practiced in Bali is much different from that in India. Other aspects of life flow this way. However, more modern cultural changes are more controversial. Changing too fast, locals fear that something special may be lost.

Traditional paintings, faithfully depicting religious and mythological symbolism, met with Western and modern paintings, giving birth to contemporary paintings, free in its creative topics yet strongly and distinctively Balinese. Its dance, its music, and its wayang theaters , while have been continually enriched by contemporary and external artistry, are still laden with religious connotations, performed mostly to appease and to please the gods and the goddesses.

videogames_sam_volunteering_charities_4_v1
Figure 3. Children painted for a local ceremony

Win-Win

The lessons learned in and out of the classroom will be with me for a long time. Overall the experience was amazing and I already have plans on how to contribute next.

Teaching abroad offers many benefits to the teacher as well of course. A few that come to mind are.

  • You can be a student in your own classroom.
  • It’s a crash course in cultural sensitivity.
  • You’ll get an instant network of local acquaintances.
  • You’ll be tapping into an excellent grapevine. The other teachers and facilitators you meet are amazing people with amazing stories and aspirations.
  • Travel is simple with a great home base.
  • It’s a career builder, even if you don’t want to teach long-term.

References

David Chalmers on VR & Philosophy

New realities are imminent: How VR reframes big questions in philosophy

The virtual reality (VR) industry is currently in its infancy, but in just a few decades it’s possible that virtual environments will be nearly indistinguishable from reality. Along with transforming everyday life, a VR revolution could fundamentally change how we understand and define what is real. In this installment of Aeon In Sight, the renowned Australian philosopher and cognitive scientist David Chalmers considers how VR is reframing and shedding new light on some of philosophy’s most enduring questions about cognition, epistemology and the nature of reality.

  • Producer: Kellen Quinn
  • Interviewer: Nigel Warburton
  • Editor: Adam D’Arpino

VR 4: Cross-Train Yourself For VR Development

Here are some untraditional and powerful ways to bring more (…more impact, more of yourself) to your software development team.

VR: As a user, virtual reality is a transporting and transformative environment. More than ever before the user is somewhere else and being someone new. Relating to the possibilities without ourselves, embracing the present moment, being mindful of the surroundings, grounding our feet into the reality and feeling what that feels like — these all help recognize what is unique about reality. With this recognition we can more, with more impact, create virtual experiences that nurture and massage the user’s senses.

Being The Cause

  • Reflect on what is working and what you’d like to work better in life. Be the responsible cause in the matter in all of your life.
  • Create a specific possibility
  • Enroll others in what you have created
  • Take a stand and act from that place

Being A Creator

Tell stories. Build stuff. Make magic. Surprise people. Follow something or someone completely just to see what that feels like. – ML

Being Creative Helps…

  • More energy, better moods – A creative project spurs me on like very little else.
  • Better work stories (and a better career) – With innovation and ideas at the heart of business today, creativity is one of the most desirable attributes in a modern career. Innovation is a much-coveted capability that many businesses seek (and struggle) to build.
  • See possibilities and opportunities –  The ability to think in ideas and possibilities transfers to all aspects of your life, and suddenly, new opportunities are unfolding.
  • Learn persistence and dedication – Creative endeavor – and the journey to mastery of your craft – takes dedication and persistence. Creativity provides one of the most rewarding canvases for learning these highly transferrable skills.
  • Continual learning and growth – Creatives are continually learning, and the drive to create means you are never standing still. Creativity offers rich quality-of-life rewards to those who are courageous enough to follow its calling.

VR: More than before, the user co-creates their experience through use of the technology. As a developer, connecting to that creative energy and productive perspective helps us design gameplay pathways that are more like ‘level designing while playing’.

My Regular Practices

  • Weekly drawing/painting
  • Telling jokes and stories – as a practice.
  • Writing fiction and non-fiction.

Being Peaceful

Research on naps, meditation, nature walks and the habits of exceptional artists and athletes reveals how mental breaks increase productivity, replenish attention, solidify memories and encourage creativity. Why? Your brain needs more downtime.

VR: The input/output in VR accentuates the depth, detail, and power of the present moment. With mindfulness, we become more aware of the relationship between stimulus and response. In life, when something happens, we react. Typically, this process happens so quickly and naturally, that we’re not even aware of it. Mindfulness is a tool that helps us to develop a gap between stimulus and response. As developers, practicing mindfulness ourselves stretches and expands our connection to the present moment. We can design for the present moment.

My Regular Practices

  • Adequate sleep (for me that is 7.5 hours)
  • Daily biking (with headphones)
  • Daily (offline) reading
  • Weekly running (without headphones)
  • Weekly drawing/painting
  • Monthly hiking

Being Expressive

Imagine being asked to stand on stage, face hundreds of strangers, and make them laugh. Sounds like a nightmare, right?

But taking to the stage is exactly what you should do to be successful in you career. Reach out and grab: confidence, authenticity, self-expression. They are right in front of you.

VR: These technologies have shown potential for learning, assessment, and self-expression. Much of the research in this area has taken a conceptual stance of veridicality; that is, that VR offers promise because it can provide authenticity and levels of realism alongside stimulus or environmental control, or both. This is authenticity of the environment around the user, as well as a fat channel for the user user to express themselves authentically. There are also opportunities for thinking more radically about research directions by focusing on the strengths and promoting more participation from the user. As a developer, tapping into self expression and deconstructing the obstacles to our own authenticity, helps us design with empathy to both introverted and extroverted user profiles.

Practicing Improv Helps…

  • Collaborate. Yes! – One of the fundamental improv practices is the “yes, and…” technique. Someone makes a statement such as “I want to buy a car.” The next person may add “Yes, and it will have leather seats.” The next person may add “Yes, and it will be red.” As silly as this sequence may sound in a boardroom setting, the idea is to get people to collaborate and understand that any idea that’s brought to the table can be accepted, added upon and made better. “It’s not about shutting things down but taking [an idea] and building it into something better,” says Connolly.
  • Let Go Of Judgement – This is invaluable in brainstorming sessions and can help improve creativity of everyone on the team. While too often the pressure of being right, or feeling that you have to come up with the best and brightest idea bring the creative process to a halt, improvisation teaches not to fear failure or allow inhibitions to triumph.
  • Be A Listener – Improv veteran Billy Connolly reminds us that you have to be clear [when you’re speaking], but you also have to be a good listener. An improv technique he often employs is a word toss in which one person says a word and the next person says a word that is inspired by the previous word.“Most of the time, people will listen to everyone else except the person directly before them,” he laughs. “The reason is they’re thinking about what they’re going to say and they’re not focused on what other people are saying.” This exercise teaches the importance not only of listening but understanding the other’s point of view before reacting.

My Regular Practices

  • Weekly Improv Class – I’m an improv student at ICC in my city.  Even after a full day of work and working out, this class fills me with an energetic second wind.
  • Daily Practice – I come from a place where I beat myself up when I don’t meet my own goals. I do this in part, to discourage myself from failing. However, setting goals, accepting the outcome, and improving regardless of the results frees me up to a more workable relationship to myself and my goals.
  • Daily ‘Desk Visits’. I make time for socializing. Not work-chat or just chit-chat, I do both of those too. But asking what those around me are excited about and then practice active listening. Being in the moment and actively listening to others without resistance frees me to respond less, with more impact.

In The End…

Building DEPTH in technical expertise and specialization is fundamental to my professional growth. That is a common way to approach professional education.

However, the BREADTH gained from cross-training with the soft skills discussed here such as communication, expressivity, peace, and active listening can round out the edges of how you fit into teams. Also cross-training in this way is a powerful differentiator which can set you apart from other candidates for advancement within your current teams and beyond.

Virtual Reality Development Challenges

Virtual reality is magical. Showing your latest gadget or game to the uninitiated often impresses. But what after the “wow” challenges in the user experience emerge.

Virtual reality is in that way rather disturbing. You stay disconnected from others, in a personal space, no one else can see. It seems like the antithesis of family. But it’s also something that everyone loved. They laughed. They were astonished. It was magic.

Here are some of the major challenges.

1. Hardware

Headset

The VR experience, in its current form, is imperfect, to say the least. The headsets are bulky, heavy and require either proprietary cameras or base stations to do proper head and body tracking. Two models withstanding, the devices are wired, meaning your movement is restricted to a confined space and limits the immersive experience.

Cost

The technology is out of reach for many. And it will be so for a long time. Less than one percent of the 1.43 billion computers in the world have the graphical capabilities needed for VR, according to the research company Gartner. There are definitely high-end computers that are optimized for it, but they’re costly. This cost shrinks the potential audience for VR content.

Fragmentation

When your application is finished, you might want to run it on a different hardware: You might have created your application for the Oculus Rift and want to try with another HMD, or maybe a stereoscopic wall or a Cave.

You then have to modify your application to take into account the new trackers, the new screens (by managing the virtual cameras and viewports), the cluster synchronization. You will also probably need to modify the interactions because you don’t necessarily have a perfectly equivalent hardware or tracking volume.

Deploying your application on different VR systems can prove to be a very difficult and time-consuming task.

Other platforms (Mobile, PC, Console) have fragmentation as well, but with VR the standards and practices are so nascent and changes are coming fast. Things will diverge much more.

2. User Experience

Input

While the visual experience of VR is such well-defined paradigm shift, the way we interact leaves much to be desired.

Because VR can be easily overwhelming for users (see ‘3. VR MOTION SICKNESS’ below), simply moving through the world needs a new solution. Instead of using a game controller to freely move through the world, many first generation VR games prefer a ‘point and click’ style of teleportation. It works, but I feel it takes me out of the immersion of the experience. Here is a great overview of VR approaches to locomotion.

Feedback

Some VR input schemes (such as Oculus Touch) not only track hands to interact with virtual worlds but have the world interact back — letting you feel the things you reach out to touch. Feeling your right controller vibrate briefly can help sell that your hand has ‘hit’ something in the virtual world.

Rendering

VR requires high CPU/GPU requirements. Today’s non-VR game running on an HD monitor; this has a resolution of 1920 by 1080 pixels and runs at least 30 frames-per-second (FPS). But for VR, that screen would be cut into two halves, each brought up close to an eye, with a combined resolution of 2160 by 1200 pixels. This picture occupies most of your peripheral vision, which means it shows more virtual objects than a normal game.

Latency

The first enemy of VR is latency. If you move your head in the real world and the resulting image takes one second to appear, your brain will not accept that this image is related to the head movement. Moreover as a result, you will probably get sick. John Carmack reports that “something magical happens when your lag is less than 20 milliseconds: the world looks stable!
Plus, instead of an FPS of 30, VR demands a refresh rate of 90 to 120 times per second. So more powerful hardware is needed to power the higher resolution and higher FPS.  Software solutions such as reprojection (See 22:30 mins into video) can greatly reduce the hardware needs.

3. VR Motion Sickness

Some users experience a special motion sickness from VR experiences.
The Oculus Rift’s health and safety documentation lists many potential symptoms including, eye strain, nausea, and impairment to balance and coordination.
Research into this area is very new, but already many factors have been identified.
  • Age: Most common for ages 2-12.
  • Experience with the system: Users who use VR often MAY develop a tolerance which prevents sickness.
  • Gender: Women are more likely than men to feel virtual reality sickness.
  • Health: Ill people are more likely to be motion sick.
  • Motion Sickness Sensitivity: People who are more sensitive to motion sickness tend to be more sensitive to virtual reality sickness as well.
  • Latency: Current Virtual Reality just can’t match our natural experiences.  Real life doesn’t have much lag. 🙂

4. VR’s Unsocial Side

There’s also the matter of blindness. While wearing VR goggles, you’re effectively blind to reality and can’t see or hear anything apart from the experience itself. You must completely surrender yourself to the process, which leaves many participants feeling intimidated or socially awkward.

Augmented Reality (AR) solves this by allowing the users to see their real environment either directly or indirectly.

The majority of all VR experiences are not multiplayer. Certainly multiplayer is possible, but the first generation of software we are seeing are relatively simple in scope compared to today’s mass market AAA games. One welcome exception is Survios’ Raw Data — a multiplayer wave-based shooter game.

5. Narrative Challenges

Avatars

When you are using a head-mounted display (HMD), you are completely immersed in the virtual world, and you don’t see your own body anymore. It is very important to display a virtual representation of yourself and others, called avatars. They can be realistic, look like yourself, or be completely different.

If your VR system offers full body tracking and if you want an avatar that has exactly the same dimensions as you, this can be a simple task. But if your VR system only has a few trackers and you want an avatar that is taller or smaller than you, it can be difficult to extrapolate the position of the limbs that are not tracked and to adapt your body posture to a different virtual body.

Past vs. Present

And this brings us to the elephant in the room with the current notion of VR Storytelling. Storytelling is a retrospective thing. It always has been. People didn’t sit around the campfire telling stories in the timeframes that they actually occurred. And I’m not aware of real-time books. Linear narrative mechanisms have evolved to break down the constraints of time and emotive viewpoint.

So how do we tell about the past (linear narrative) while being in the present (non-linear experience)?

More About Narrative

In The End…

Virtual reality is magical. But there are many real challenges and obstacles in the nascent industry. My VR experiences have been full of wonder and inspiration. I am hopeful and willing to shape the long-term future of the technology.

 

 

Virtual Reality Is Here!

 

Emotions – happiness, anger, jealousy… is the mind experiencing ‘presence’ in VR. – Clyde DeSouza

 

Virtual Reality is here. Since 2016 we can play high quality experiences.

In my previous article Finding Your Next Unity3D Job I overview what companies want in prospective candidates and outline where you can search for available positions. And in Get a Job In Game Development, I discuss the specifics of a programming career in the games industry

The games industry spans myriad platforms. Historically, PC (Commodore, Amiga, Dos, Windows, Mac, Linux) through the 70’s and 80’s led the medium. Consoles (Atari, Nintendo, Sega, Sony, Microsoft) and handheld (especially Nintendo) brought the first game-specific hardware to consumers. The 2007 release of the iPhone brought the critical masses to the device that would launch more games per year than any other platform before it. People who ‘never play games’ started to play, and continue to play today. The primary leader of advancement each year has been ‘better graphics’. Visuals are important to the marketing, promotion, and experience of playing video games. While the history of that technology spans decades, the number of other major technology advances is relatively small.

Its a short list. Here are the most significant paradigms in video games:

What is VR?

Virtual reality (VR) is a computer technology that uses software-generated realistic images, sounds and other sensations to replicate an a real environment or an imaginary setting, and simulates a user’s physical presence in this environment to enable the user to interact with this space. The essential hardware is a VR Headset.

Visuals

Visuals are at the essence of VR.

If all humans had just one eye, we would see still see robust visual information. But compare that to 2 eyes. Our 2 eyes look in the same general direction at the same objects. However, the offset position of our eyes (inches apart) and the unique angle (looking in slightly towards the nose) give us much more information than one eye could give. Through stereopsis we sense depth, perspective, and motion at a more profound level.

In traditional software development, visual content is designed for one screen of output (e.g. computer monitor or TV). This is essentially a one-eyed perception of the world within our games. For decades, we have adapted to see those worlds as realistic.

The perceived psychological distance between our ‘self’ and our ‘game’ collapses. The subtleties of where we are sitting, how we are sitting, and the angle of the screen are insignificant. In one-screen gaming, we are not ourselves, we are the screen.

However, the essential difference in VR is the simultaneous output of 2 high-resolution, high frame-rate screens. For the first time in the virtual gaming world we are gaining the same benefits of stereopsis in the physical world.

In VR gaming, we are no longer our game screen, we are ourself.

Input

Traditional gaming input devices include keyboard, mouse, controller (joystick/gamepad), and more recently gesture and voice. VR can and will embrace those devices too.

Primary Inputs

  • Headset – the position, angle, and acceleration of your head are input.
  • Motion Controller – The position, angle, and acceleration of your hand(s) are input.
  • Gamepad – Traditional console game controllers are also popular.
  • Augmented Reality… (MetaMagic Leap)

VR Challenges / Solutions

As with any new technology there are challenges with market adoption and device fragmentation. There are also myriad Virtual Reality Development Challenges including locomotion (how the character moves through the world) and very demanding rendering hurdles.

VR Platforms

While there have been attempts at VR in the past, 2016 marks the relevancy of VR to the mainstream. The cost, quality, and distribution are finally here. Some are already released and before the end of the year, all the known devices will be released.

Top Platforms

  • Vive – Highest price, best hardware
  • Oculus
  • Playstation VR – Lower price non-mobile with massive distribution potential (with 40 million PS4’s sold as of October, 2016)

Others

VR Software

Forever, we as game players waited for the right hardware. Its here. Now the game development industry is scrambling to provide us content.

Games

Movies

  • The Wild West of VR Narrative ( link )

Experiences

Uses For VR

Entertainment is the primary usage for the VR we see today, but telepresence, healthcare, and education have massive potential too.

Education

  • LifeLique (Life Like) – Interactive 3D models for STEM learning.
  • Virtual Reality Meets Education ( link )

Developing VR

Apple has yet (October 2016) to announce specific plans for VR/AR, but the major game development platforms are embracing VR. Some more quickly and completely than others. Here are a few leading options.

Resources

  1. Big Storage Is The New Reality In Virtual Reality ( link )
  2. Investing in VR Could Kill VR ( link )

Play For Good: Videogame-Related Charities

Giving & Gaming

Philosopher Albert Schweitzer shows us “No matter how busy one is, any human being can assert his personality by seizing every opportunity [to give back] for the good of his fellow men.  He will not have to look far for opportunities. Our greatest mistake, as individuals, is that we walk through out life with closed eyes and do not notice our chances.”

Author and video game advocate Jane McGonigal explains her #1 goal in life is to see a game designer nominated for a Nobel Peace Prize. She forecasts that this will happen by the year 2023. Of course, it’s not enough to just forecast the future — She’s also actively working to make it a reality. (And you can too — join Gameful, the Secret HQ for Worldchanging Game Developers.) Her best effort so far? SuperBetter, a game that has helped more than 250,000 players so far tackle real-life health challenges like depression, anxiety, chronic pain and traumatic brain injury.

Figure 1.

As a professional game developer with 17 years experience (2016), I am regularly involved in charities. With the flexibility offered by owning and running my own consultancy for years, I could also take time out for volunteering. One year I taught English (and some gaming too!) in Indonesia (See Figure 2). The experience left me positively (changed and) charged. Back in the office, more research has led me to write this article on the many ways we can all give back using skills from game development. I’m very excited for the possibilities. I have already contacted many companies to ask how I can be of service. I’ll provide an update in the future with new discoveries.

Figure 2. Me, Teaching English (And Videogames) In Asia

As individuals we can all give a bit more to help the issues we care about. But the issue of course is not just individual. Companies can build their charitable concerns to augment business objectives including of course public relations and to attract proactive new talent. When considering new employers, partners, and clients… the charity and community involvement are important parts of my evaluation of successful fit within company culture.

Game Companies Doing It Right

The Humble Bundles are a series of collections (“bundles”) of digital creations that are sold and distributed online at a price determined by the purchaser. The bundles are typically offered on a semi-regular basis during a two-week period; sales often include bonus games or media offered mid-week through the sale for those that have already purchased the bundle or otherwise pay more than the average.

As GuardianLV explains, there are two aspects of Humble Bundle that separate it from the conventional retail model. The first one is that the buyer can determine the price of the product they buy. One would think that this would drive the price down; but Humble Bundle has already thought of that. The consumer must pay above the average price in order to get the bonus, most coveted games in the package, among other benefits. This prevents buyers from lowballing the price too much, as many of them primarily purchase the bundle specifically for those games. Also, only those that pay over $1 will get keys to Valve’s Steam client. This is significant because Steam sometimes holds contests allowing players to win prizes by accomplishing certain achievements within the games offered in order to enter a raffle. This became a problem with Humble Indie Bundle 4, as many gamers were purchasing multiple packages for the minimum price of one cent in order to enter a concurrent Steam contest multiple times, and that is why this policy was put in place.

As of September 25, 2013, our customers have given more than $25 million to the many great charities associated with Humble Bundle. The generosity of Humble Bundle customers has benefited many vital charities. It recently closed with over 2.1 million bundles sold and $10.5 million in sales. The portion of that given to charity was significant.

The other aspect that sets Humble Bundle apart is that gamers decide how much of their money goes to what end. Buyers can choose what percentage of what they pay goes to the game developers, to Humble Bundle, Inc. itself, or to the charities corresponding to that particular package, which vary from bundle to bundle. Furthermore, the consumer can choose how much of their charitable donation goes to what specific organization.

Figure 3. Consumers select how much of the purchase price goes to charity

Charity Organizations

videogames_charities_gamesforchange_v1

Games For Change

The mission statement for Games For Change (G4C) isCatalyzing Social Impact Through Digital Games”. Since 2004, they facilitate the creation and distribution of social impact games that serve as critical tools in humanitarian and educational efforts.

President of G4C Asi Burak is an award-winning game creator, tech executive, and social entrepreneur. He is the Executive Producer of the Half the Sky Movement games, he orchestrated partnerships with Zynga, Frima Studio, some of the world’s leading NGOs, and Pulitzer Prize-winning authors Nicholas Kristof and Sheryl WuDunn.

Unlike the commercial gaming industry, G4C aims to leverage entertainment and engagement for social good. To further grow the field, they convene multiple stakeholders, highlight best practices, incubate games, and help to create and to direct investment into new projects.

videogames_charities_gamesforgood_v1

Games for Good

Games for Good leverages game mechanics for social benefit. Games created for this segment of the industry hope to teach, train or simply generate awareness of a topic, an issue or a societal problem, therefore creating change – in thinking, actions or attitudes.

Examples of Games for Good

  • Games that teach young people to become globally conscious citizens, contributing their own solutions to social issues
  • A game that focuses on the moral challenge of oppression of women around the world, with content designed to teach young women how to unlock their economic power
  • A title that helps people form good savings habits, avoiding the pitfall of too many credit cards and debt
  • Games that help players think more critically about complex issues like race, religion, nationality, class and culture

Games for Good brings together leaders from non profits, government, corporations, academia and the gaming industry. This game category often provides an entry point for public sector entities new to the field, introducing a new way for these organizations to get their point across.

The Serious Game Association is building a directory to make Games for Good accessible to more organizations and people.

videogames_charities_extralife_v1

Extra-Life

Since 2003, Extra-Life has set up and organized Child’s Play, a game industry charity dedicated to improving the lives of children with toys and games in our network of over 70 hospitals worldwide. Over the years, you as a community have answered the call and come together to raise millions of dollars.

Child’s Play works in two ways. With the help of hospital staff, they set up gift wish lists full of video games, toys, books, and other fun stuff for kids. By clicking on a hospital location on their map, you can view that hospital’s wish list and send a gift.

Child’s Play also receives cash donations throughout the year. With those cash donations, they purchase new consoles, peripherals, games, and more for hospitals and therapy facilities. These donations allow for children to enjoy age-appropriate entertainment, interact with their peers, friends, and family, and can provide vital distraction from an otherwise generally unpleasant experience.

videogames_charities_gamesthatgive_v1

Games That Give

GamesThatGive was founded in 2008 by Adam Archer and Kris Goss, great friends and self admitted geeks. GamesThatGive was built around the belief that great companies, and their customers, want to make a difference. Even beyond that, they want to help others make a difference.

While many companies engage in charitable activities, they are rarely effective at involving their customer base in these efforts. That’s why GamesThatGive combined gaming with charitable giving to create the leading platform for engaging brands’ customers in charitable activities.

And so far, the results have been exceptional. GamesThatGive’s clients now include many of the biggest brands in the world. These brands have built trust and loyalty with their customers, and at the same time have helped make the world a better place.

When companies and customers play games to help others, everyone wins!

Please email us today. A real person will always respond, and we’d love to hear from you.

videogames_charities_iggg_v1

IGFG

Indie Games For Good is a marathon event. It is about encouraging people to donate to Child’s Play while generating exposure for independently developed games. We’re going to run a live stream of us playing indie games, and we’ll keep playing for as long as people keep donating. Unlike other gaming marathons, which only play a predetermined list of games, the games we play during IGG Marathon will be determined by requests from our donors, so our viewers will be directly involved in the experience. Last year we raised $12,856.76 for Child’s Play, and played for 76 hours. The year before that, we played for 79 hours and raised $6,816.40.

videogames_charities_specialeffects_v1

Special Effect

SpecialEffect is a registered UK charity which helps to find ways for disabled people, unable to use a standard video games controller, to be able to enjoy the interaction, fun and many other benefits of playing video games.

They set up, create, lend and support the use of specialist games controllers from our library of equipment. Everyone they work with is different. Some of the people they work with find it difficult or impossible to control parts of their body other than their eyes. In these instances SpecialEffect uses computers which are controlled just by moving their eyes.

The demand for this work is growing all the time, so they are asking you to help to meet this need and help us purchase this very special piece of equipment which will add an additional eye-controlled gaming system to our library.

By pledging and spreading the word to your friends and fellow gamers, they can help more people, more quickly together.

How You Can Help

Checkout great charity organizations that mix gaming with a cause you care about. You can make a donation and perhaps volunteer your time.

In a larger way, consider how your current company and your game projects affect others. Not every game must ‘give’ or ‘teach’, but the impact we each have on the world is big and can always be bigger and better.

Watch the great video below. It is fantastic.

References

Unity Training Course

These “Unity With Cocktails” training courses will be offered again soon. Contact me for more info.


1. A Shot of Unity #1 (Free Training)

  • Duration: 1.5 hour
  • Location & Date:
  • Price: Free
  • Description: A brief introduction to Unity for Game Development
  • Takeaway: Appreciation for what is possible with Unity and curiosity to learn more.
  • Materials Required: None.
  • Materials Provided: None
  • Topics Covered
    • What is Unity?
    • Tour of the Unity Editor & C#

2. Unity With Cocktails (Paid Training)

  • Duration: 16 hours during 1 weekend (Saturday / Sunday)
  • Location, Price, & Date:
  • Description: Learn Unity for Game Development. This is a 2-day overview compressed from over 64 hours of course material. We’ll have a ‘cocktail’ (and beer) theme for the art assets and game programming. The atmosphere will be casual. The teaching style is approx. 80% lecture and live coding demonstration and 20% student-participation and group discussion.
  • Takeaway: Skills to create a very basic 2D game with audio, visuals, and user input.
  • Materials Required: Bring your own Laptop running
  • Materials Required: Bring your own Mac/PC laptop the latest free Unity Personal Edition installed.
  • Materials Provided: Sample projects and assets including C# source code.
  • Prerequisites: Basic programming skills in any programming language.
  • Note: If you are familiar with Unity and can already create your Unity own game, this course is too basic for you. See Unity Advanced below.
  • Topics Covered
    • Module 1
      • What is Unity?
      • Game development concepts
      • Introduction to the Unity IDE
      • GUI & Unity 2D
    • Module 2
      • C# Programming 1: Fields, Properties, Methods, Events
      • Unity: GameObjects, MonoBehaviours, Transform, Serialization, Attributes, Editor Scripting
    • Module 3
      • C# Programming 2
      • Unity: ScriptableObjects, Prefabs, Primitives, Physics, Audio, Input
      • Debugging
        • Debug class
        • #pragma
        • Warning vs Error / Compiler vs Runtime
    • Module 4
      • Deploying Unity for Mobile
      • Unity Services – Cloud Build & Analytics, & more…
      • High Quality (AAA) in Unity – Graphics (PBR, SSRR, GI) & Audio
      • Game Design Patterns – Singleton, Observer, & more…
      • Game Architectures
      • Best Practices & Coding Standards
    • Bonus (Time & Interest Permitting)
      • Raycasting, Time.deltaTime, Coroutines
      • NavMesh
      • C# Programming 3:
        • Lambda Functions
        • ref/out
        • LINQ

3. Unity Advanced

  • Duration: TBD
  • Location & Date: Upon Request
  • Price: TBD
  • Description: Private tutoring for individuals and groups on advanced topics of Unity. You choose the topics.

Coding Standards in C++

Increasingly, our projects and teams span more programming languages.

The coding standards for C++ presented below are designed specifically for consistency with these existing Coding Standards in C#.

Coding Templates

One coding template example is below and the rest are available on GitHub.

/**
 *   CONTRIBUTORS:
 *   Sam Rivello - sam@UnityGameDeveloper.com
 *   -------------------------------------------------------------------------------------------------
 */

#ifndef TemplateClass_hpp
#define TemplateClass_hpp
#include <iostream>
using namespace std;

namespace RMC { namespace Core { namespace Templates
{
    
    class TemplateClass
    {
        private:
        
        //  Fields -------------------------------------------------------------------------------
        string _samplePrivateText;
            
        public:
        
        //  Initialization -----------------------------------------------------------------------
        TemplateClass(void);
    
        //  Methods ------------------------------------------------------------------------------
        string SamplePublicMethod (string message);
    
        //  Event Handlers -----------------------------------------------------------------------
        void Target_OnEventOccurred (void);
    };
}}}

#endif
/**
 *   CONTRIBUTORS:
 *   Sam Rivello - sam@UnityGameDeveloper.com
 *   -------------------------------------------------------------------------------------------------
 */

#include "TemplateClass.hpp"

namespace RMC { namespace Core { namespace Templates
{
    //  Fields ---------------------------------------------------------------------------------------
    string _samplePrivateText;
    
    //  Properties -----------------------------------------------------------------------------------
    string SamplePublicText() { return _samplePrivateText; }
    void SamplePublicText(string v) { _samplePrivateText = v; }
    
    //  Initialization -------------------------------------------------------------------------------
    TemplateClass::TemplateClass (void)
    {
        
    }
    
    //  Methods --------------------------------------------------------------------------------------
    string SamplePublicMethod (string message)
    {
        return message;
    }
    
    //  Event Handlers -------------------------------------------------------------------------------
    void Target_OnEventOccurred ()
    {
        
    }
}}}

Coding Standards in C#

Unity3D is a powerful suite of tools (Project IDE, Code IDE, and run-time) for game development. Unity supports several languages, but the community consensus is to use only C#.

Microsoft created C# and published recommended codings standards. I created my own standards with many differences. While Microsofts standards are not created with Unity in mind, mine are.

Pros of Coding Standards

Regardless of which convention you choose to use for Unity or other platforms, having some sort of convention is considered a good idea by the majority of the development community. A hallmark of Getting Things Done efficiently is to automate what can be automated. Once a team has standards and adopts them (both admittedly time consuming) the time improvements in the daily workflow are notable. There is less discussion on why or how to name things. It just gets done.

  • Consistency – The code base as a consistency in presentation regardless of team location, spoken language, or individual programmers.
  • Integration – The code, the review of the code, and your team are more tightly integrated. Theoretically code is more interoperable (copy/paste) and mutually intelligible.
  • Maintenance – Conventions aid readability. Readability helps new and existing programmers revisit the code base for fixes and improvements.
  • Communication – Developers more implicitly understand each other in written and verbal communication.
  • Ownership – More consistency in coding standards across a code-base encourages Collective Ownership, the feeling of respect, care, and reverence developers for their own work and for those who contribute thoughtfully to their own work.

To be fair, there are drawbacks too. The additional time required per team to develop standards, implement standards while coding each day, police such standards is considerable. You may find certain rebellious personalities and certain cultures which value independence may not take to the idea of standardization well. This may limit hiring options and lengthen on-boarding process. What are the other drawbacks?

Cons of Coding Standards

Few developers argue the benefits of coding conventions, yet many argue if the time and discipline required is worth it. Some developers simply refuse to add ‘cosmetics’ to their code. In their eyes, if it functions well, the code is good enough.

More contentious yet — what are the criteria of a good standards? A few criteria most people can agree on are here.

  • Consistency – Whatever rules there are should be applied evenly and applied everywhere.
  • Pragmatism – The convention should be concerned with ‘important’ things and nothing else.

Naming Conventions

  • Naming/Coding Conventions – This relates to the how a developer chooses to name and capitalize the custom keywords he uses. Generally each platform/language has a recommended format but NOT a required format. Some IDE’s offer compiler warnings (not errors) which encourage adoption of its recommended format. That is the focus of this post.
  • Style Conventions – This relates to the how a developer chooses to indent, comment, and add whitespace to his or her programming. Generally each platform/language has a recommended format but NOT a required format. Some IDE’s offer an ‘autoformat’ which will convert your file to its recommended format. That is NOT the focus of this post.
  • Lower Camel Case Naming convention where the first letter of a name is not capitalized and each element of the name begins with a capital letter. e.g. iPhoneCase.
  • Upper Camel Case (aka Pascal Case) – Naming convention where the first letter of a name is capitalized and each element of the name begins with a capital letter. e.g. PowerPoint.

Coding Templates

One coding template example is below and the rest are available on GitHub.

/**
*   CONTRIBUTORS:                   
*   Sam Rivello - sam@UnityGameDeveloper.com       
*   -------------------------------------------------------------------------------------------------
*/

using UnityEngine;

namespace RMC.Core.Templates
{
	
    //  Namespace Properties ------------------------------------------------------------------------

    //  Class Attributes ----------------------------------------------------------------------------

    /// <summary>
    /// Replace with comments...
    /// </summary>
	public class TemplateComponent : MonoBehaviour 
	{
  
        //  Events ----------------------------------------------------------------------------------

        //  Properties ------------------------------------------------------------------------------
        public string SamplePublicText  {  get  {  return _samplePublicText;  } set  {  _samplePublicText = value;  } }
		
        //  Fields ----------------------------------------------------------------------------------
        [SerializeField] private string _samplePublicText;
		
        //  Initialization --------------------------------------------------------------------------

        //  Unity Methods ---------------------------------------------------------------------------
        protected void Start () 
		{

		}

		protected void Update () 
		{
			
		}
		
        //  Methods ---------------------------------------------------------------------------------
        public string SamplePublicMethod (string message) 
		{
			return message;
		}
		
		
        //  Event Handlers --------------------------------------------------------------------------
        public void Target_OnEventOccurred (string message) 
		{
			
		}
	}
}

References