Take 2 SWIFT Bites Out of Apple’s New Programming Language

Posted on Updated on

by Linda Cohen

Building with XCode through . It is a 4GB application

WEB187 is the iOS developer course, although WEB251 is also used at another college. WEB151 ANdroid WEB251 iOS at

We’ll be building a discount app. There is a LET command which will allow a variable to become a constant. However, forms are also required to be a LET command, so we’ll be looking at that as well.

We’ll be suing a single VIEW and sticking with that VIEW in this class. We chose single view. We’ve given a product name, and we’ll create. This is made for iPAD, but there are different ways to create for the iPhone. The target we’re using ins 9.2. If you have an older version, use that.

The word TEAM says NONE. That means that your work is open source. That allows you to work for android, windows, or apple.

When working with android, its all xml in the background. Then you had to create the JAVA. Android developer studio seems to have some wonderful parts

The STORYBOARDis where we’ll design the interface for the application. Clicking on the first view, we’ll see the information on the view. You can add titles and other materials here as well.

Naming Conventions for the Objects

  • LABELS are for output only and start with lbl
  • TEXT fields are for input and start with txt
  • BUTTONS are to create an event where the actual code goes and they start with btn

A Label is added, and the right column allows us to give specifics about these items. Several display pieces are allowed to show us the basic profiles. Some basic labels are added in here, names, discount amounts, amount of the meal without text. And then, we add a button. We did not add labels with names.


ONce you have the interface, you need to relate the code behind the scenes. Next right column with left boxes allow us to visit this graphic layout in several different fashions. txt is for text lbl is for labels

Buttons work similarly, dragging the visual side to the code area. While the others are OUTLETS, the button is an ACTION. “Touch up inside” is the same as click or touch. Applie will be different and not count if dragged across.

Initialize all variables BEFORE they are used.

let TAX = 0.07  //  Declare TAX as a constant

var subTotal : Double = 0.0

var total : Double = 0.0

lblDisplayTotal.text = “”

let name = txtName.text!

let discountAmt(txtDisAmt.text!)

let mealCost = Double(txtMealCost.text!)

This material does not require () for IF statment, but does require {

if discoutnAmt != nil && mealCost != nil


   subTotal = mealCost! – discountAmt!    // create subtotal

   total = subTotal*TAX + subTotal   // create total

   lblDIsplayTOtal.textColor = UIColor.blueColor()

lblDisplayTotal.text = String(format: “Thank you, /(name) with tax, your total is %.2f”, total )

Once everything is selected, choose “Get Results” The PIN tool. Clicking on the top three lines will tell you the number of restraints you’ll need to keep this in place. These restraints allow you to keep these items in place with a responsive design. To get around this, Clear the restraints, make changes, and then return the constraints.


We loaded up the program. It worked. Once you’ve developed in the open source section, you can attach your ipad directly (because we programmed for ipad) and it will automatically add this to your device.


ECGC: Leadership – Leading Disciplines You Don’t Understand

Posted on Updated on

Leading disciplines you don't understand

Session entitled: Managing Disciplines You Don’t Understand, ECGC, 4/24/14. Professional development on leadership with Dustin Clingman. This session was principally for producers and anyone managing a multi-disciplined task force.

Leaders and leads are primarily the target for this talk. Clingman posed the question: “What shall we rant about?” asking leads and leaders what some of the major complaints about their jobs happen to be.

Major responses included:

  • Team members (or team as a whole) don’t do what they say  they will
  • They don’t follow through
  • They provide work that does not meet specs
  • They fail to communicate (problems, solutions, issues, or at all)
  • Excuses (there’s always an excuse)
  • They do not meet established schedules

Many team members do not understand that leaders and leads are on the spear’s tip to meet deadlines and produce quality work.

What is the role that we play as the lead? We have the ability to explain and understand the scope and intent of the project, goals, parameters, and the timeline. We have to make sure team is happy or healthy (preferably both).

In reverse, what are the staff saying about the leaders?

  • Producers suck.
  • Producers suck. (this is not a typo, these are the top 2 complaints)
  • Producers talk, and they don’t listen
  • Producers don’t defend us
  • We’re always being crunched
  • What do they do?
  • I’ve never worked with a good producer.

Where does that energy come from? Those commenters are not bad apples or poor designers or crybabies. Those responses are from qualified employees. Producers are middle managers- buffers and barriers between workers and the management team. Many producers take so much time managing and not enough time leading. So, I have renamed this discussion and professional development session:



“Producer” is a term pulled from the movie-making and video industry. Perhaps because we see video games as elaborate and award-winning as movies. Real producers gather the money to make a film come to the screen, and then take an elaborate amount of the attention. So, we are not paying for the production costs, but maybe taking credit though.

Not all producers have experience with each and every discipline in the game industry. Just ask a developer. It can be said that the level of happiness for Developers is measures by the number of WTFs per minute. The important thing to remember here though, is that we are all different, and we are all the same. Many of us chosen to be leaders have little or no experience- and some of us no interest- in leading. If successful, we charge ahead from game to game, we don’t backfill or teach people how to be great leaders. There is little in the budget or time for leadership training, and most of us achieve training within the the community.



Myers-Briggs and True Colors tests are good to point out blind spots in our views, and different needs for staff members based on emotional behavior. BLAME-CULTURES are the worst. Don’t take the test if you work in a blame culture location. People will lump together into hate groups and strike out or shun those who think differently. Bad information in these climates can be used to reinforce grouping behavior, and it will be painful in the end.

Most leaders are FORCED into the role. Some choose it. It is lonely being OF the people but at the spear’s tip, leading the group. As a leader, you need to recognize the personality and humanity of those under you. They will not think the same of you.   😦

The boss needs to know the people. Spend time investing in personal relationships, get to know them (that is their lives) outside of work, etc. Don’t be a buddy over a boss, but fraternize in limited amounts. This will pay big dividends. Once you can recognize their qualities and individuality, they are willing to work harder.


Give clear directions, and Grow a Spine

Decide a production methodology that works and then find a way to sell it to your management and team. “But, we’ve always done it this way” are the seven most dangerous words in business.

Grow a spine when either side fights back. If you’ve agreed on a path, take it- don’t let management above roll your team, and don’t let the team force you away from your path. Hold people accountable and support them. Spinelessness is not leadership. Negotiation and compromise ARE leadership. It is evil to be disengenuous to your team and crumble to the boss. Be swift, spare no souls who stand in the way. People are often afraid to tell the truth, especially if it is about failure, disagreement on keen points, or needing more than you initially planned. IF you tell the truth, you can return to the team as a hero


Protect the creative environment

Find out how your people like to work best, and enable that to happen. Get buy-in from the rest of the studio or at least your neighbors. Examples of this might include: quiet time from 2-5pm, low/high light, headphones

Keep YOUR personal life together

You can’t lead when you’re not in your right mind. All your hard work on relationships in your workplace can be ruined by a glib comment or two. Know how to keep things separated. If you’re the leader, you never get a pity party. EVER. There is a lot of stress in leadership, but you cannot let that affect your workplace

Get rid of troublemakers
If you have non-performing indvidual, do not balk about getting them on a performance plan. Mental anguish arises and team morale quickly declines when one person isn’t pulling their weight. Developers don’t like conflict, because that’s your job as a manager. Everyone would rather do more work than have to put up with someone dragging them down.

Don’t over-manage/be a control freak too often
If you come from another discipline, use it. Don’t ever argue over colors or words.

Learn how to play poker
For leaders, this is a must. Life itself is a game of incomplete information. How people behave or patterns they exhibit become their behaviors. How they play poker is how they think about life

Play to the strengths of the team
set them up for success at least on this project. FInd the path that works and speed things up. Some team members thrive under controlled crunch. Find out ow your team works best and then create those conditions.

This will trivialize them. If you don’t know, ask them questions and make them teach you,


So leadership tactics formed easily in the first part of this discussion, but lets talk specifically about how to manage and lead disciplines if you are unfamiliar with the archetypes.

Managing the artists
Artists need space and they space out more than you like. Save them from themselves, get involved early and give good boundaries to your art requests. Be very specific about what you want to see, how many variations, how many ideas, etc. Rework drives them BONKERS, especially when this is preventable.

Managing engineers
When engineers explain their ideas and plans passionately, ask them to deconstruct this for the lay person. Don’t be afraid to ask them what the options are. Look to them as technical mentors and ask how you can learn more about a particular subject. Beware the coding zinger joke.

Managing designers
Designers want rules, but they are often tempted to break them. Give them Bite size work, and embrace the protypes! Support them, organizational chart pending. Understand that they exist to give order to the game. They are frequently Tauran, liking stability, sameness, comfort.

Managing sound designers
Audio guys want respect. Bring them into the process early so they can be part of the ideas and concept from the very beginning. People usually want to build the game THEN add the sound, like a movie. The more immersed the sound designers are, the better the product will be. Be very, very clear with your feedback.


Closing Thoughts

How can you get people to separate their ego from the end product? Well, you can’t. Leadership starts at the top. I never introduced a person as someone who works FOR me, but rather I introduced them as someone who works WITH me. If ego is trumped at the top, it will trickle down. Leadership should be humble, willing to do everything they ask others to do. Preferably the interview process will allow you to throw someone under the bus and tout themselves so you can get an idea of what they’ll be like in your organization, but good luck getting that to happen…