theodp writes: Catching himself terminating statements with semicolons out of habit when none were needed, Rick Wicklin asks: Do you write unnecessary code? And while Wicklin tries to skip certain unnecessary statements, there are others that he finds, well, necessary. "Sometimes I include optional statements in my programs for clarity, readability, or to practice defensive programming," he explains. Wicklin's post is geared towards SAS programming, but the question of when to include technically-unnecessary code — e.g., variable declarations, superfluous punctuation, block constructs for single statements, values for optional parameters that are the defaults, debugging/validation statements, non-critical error handling, explicitly destroying objects that would otherwise be deleted on exit, labeled NEXT statements, full qualification of objects/methods, unneeded code from templates — is a language-agnostic one. So when-and-why do you find it necessary to include 'unnecessary' code in your programs? And are you tolerant of co-workers' unnecessary code choices, or do you sometimes go all Tabs-vs-Spaces (YouTube) on them?
theodp writes: In the wake of Brexit, the NY Times reported earlier this month that President Obama will need his oratory powers to sell globalization. Asked to explain his strategy to reverse growing sentiment over globalization, President Obama responded, "The question is not whether or not there's going to be an international global economy. There is one." Still, the President acknowledged, "Ordinary people who have concerns about trade have a legitimate gripe about globalization, because the fact is that as the global economy is integrated, what we've seen are trend lines across the advanced economies of growing inequality and stagnant wages, and a smaller and smaller share of overall productivity and growth going to workers, and a larger portion going to the top 1 percent. And that's a real problem. Because if that continues, the social cohesion and political consensus needed for liberal market economies starts breaking down." The disconnect between theory and reality is at the heart of Ross Hartshorn's Globalization Considered Harmful. "There is a word for people who are opposed to the globalized economy, and it isn't 'xenophobe' or 'racist'," he writes. "It's 'protectionist'. For some time now, it's been thrown around as an insult, as if there were something wrong with protecting people. There was a similar trick played in the U.S. with the word 'liberal', where conservatives used it as an insult long enough that candidates on the left started to avoid describing themselves as liberal. But there is nothing wrong with protecting people, and there is everything wrong with globalization. Globalization isn't about respecting other people's culture, or treating everyone fairly regardless of their race. Globalization is about each country specializing in just one part of a normal, healthy, diverse economy, and then treating anyone whose talents aren't suited to that part of the economy, as if they were defective and in need a handout rather than a job. I think it is time for people who don't like what globalization has done, to start using the word 'protectionist' to describe themselves. I am a protectionist; I think there is nothing wrong with protecting people. The backlash against globalization isn't the problem. Globalization is the problem."
theodp writes: Back in 2014, Gas Station Without Pumps patiently explained that while the case can clearly be made for female and black students being under-represented in Advanced Placement Computer Science exams, pointing to states with zero female or Black AP CS test takers is not the way to do it. Of the eleven states that had no Black test takers in 2013, GSWP explained: "The zero black AP CS test takers for the nine states can be fairly confidently attributed to the lack of AP CS test takers, and in Maine to the shortage of black students. For Alaska, the lack of black AP CS test takers is probably due to the shortage of AP CS test takers in the state." But that didn't stop Facebook from using the dramatic-but-statistically-fallacious arguments on Thursday to explain away its still-1% Black tech workforce. "It has become clear that at the most fundamental level, appropriate representation in technology or any other industry will depend upon more people having the opportunity to gain necessary skills through the public education system," said Facebook Global Director of Diversity Maxine Williams, who was tasked with explaining why Facebook's diversity efforts don't seem to be working (Facebook's tech workforce is 48% White, 46% Asian, 3% Hispanic, 1% Black, 2% Other). "Currently, only 1 in 4 US high schools teach computer science," Williams continued. "In 2015, seven states had fewer than 10 girls take the Advanced Placement Computer Science exam and no girls took the exam in three states. No Black people took the exam in nine states including Mississippi where about 50% of high school graduates are Black, and 18 states had fewer than 10 Hispanics take the exam with another five states having no Hispanic AP Computer Science (CS) test takers. This has to change." To give Facebook's innumerate explanation some context, according to 2015 AP Data, Mississippi had a grand total of five AP CS test takers. And in the three states where no girls took the exam — Montana, Mississippi, and Wyoming — boys respectively took zero, five, and three AP CS exams.
theodp writes: Responding to an appeal from Rev. Jesse Jackson (YouTube) at Google's 2014 Annual Meeting for the search giant and other tech companies to "please publicly release your EEO-1 report that identifies the race and gender characteristics of your workforce," Google Chief Legal Officer David Drummond responded (YouTube), "Many of the companies in the Valley have been reluctant to divulge that [EEO-1] data, including Google, and quite frankly, I think we've come to the conclusion that we're wrong about that, and we should be disclosing that data." So, since Google recently announced that "today we’re updating google.com/diversity with our 2015 demographics," one might expect to be able to find Google's 2015 EEO-1 filing there (Apple and Microsoft released theirs in January), right? Wrong. The fine print on the page ("**See our EEO-1 report for more information") still links to Google's 2014 EEO-1 (although Google's 2015 EEO-1 numbers were shared with Reuters). The Google Diversity site calls visitors' attention to "hiring above our current representation of Blacks and Hispanics" (e.g., "4% of new hires in 2015 were Black, compared to 2% of our current population") instead of overall numbers (e.g., clicking a button reveals a chart that shows Blacks still make up only 1% of Google's tech workforce). Hey, it's all in how you spin it. So as not to single out Google, it does not appear that the move-fast-and-break-things folks at Facebook have yet found the time to post their 2015 EEO-1 survey, which was due on October 30, 2015.
theodp writes: Earlier this week, Slashdot reported on Google Research's launch of Project Bloks, "a development platform for tangible programming for children." About Project Bloks explains: "This project kicked off in 2013, when a small group of interaction designers and programmers in Google Creative Lab got together. We wanted to help get the powerful ideas of computational thinking into the hands of younger kids by building on the long-standing academic research into using tangibles for learning." Coincidentally, 2013 was the same year that Microsoft Research positioned.NET Gadgeteer as "a new platform for K-12 computer science education" (Slashdot first reported on.NET Gadgeteer way back in 2011). A SIGCSE '13 paper describing Gadgeteer noted its tangible nature promotes computational thinking in kids. Conceptually they're not all that different — nor are the sample projects. With Gadgeteer, Microsoft explained, a kid could put together components to sound a buzzer when the temperature of drink changed. And now with Project Bloks, Google explains, a kid could put together components to switch on a light when the temperature of the air changes. So, will a Googlier take on tangible programming be a bigger hit with kids than Microsoft.NET Gadgeteer?
theodp writes: Q. How is K-12 computer science like the Cold War? A. It could use a Sputnik moment, at least that's the gist of an op-ed penned by Senator Jerry Moran (R., KS) and Microsoft President Brad Smith. From the article: "In the wake of the Soviet Union’s 1957 Sputnik launch, President Eisenhower confronted the reality that America’s educational standards were holding back the country’s opportunity to compete on a global technological scale. He responded and called for support of math and science, which resulted in the National Defense Education Act of 1958 and helped send the country to the moon by the end of the next decade. It also created the educational foundation for a new generation of technology, leadership and prosperity. Today we face a similar challenge as the United States competes with nations across the globe in the indispensable field of computer science. To be up to the task, we must do a better job preparing our students for tomorrow’s jobs." Smith is also a Board member of tech-bankrolled Code.org, which invoked Sputnik in its 2014 Senate testimony ("learning computer science is this generation’s Sputnik moment") as it called for "comprehensive immigration reform efforts that tie H-1B visa fees to a new STEM education fund...to support the teaching and learning of more computer science," nicely echoing Microsoft's National Talent Strategy. Tying the lack of K-12 CS education to the need for tech visas is a time-honored tradition of sorts for Microsoft and politicians. As early as 2004, Bill Gates argued that CS education needed its own Sputnik moment, a sentiment shared by Senator Hillary Clinton in 2007 as she and fellow Senators listened to Gates make the case for more H-1B visas as he lamented the lack of CS-savvy U.S. high school students.
theodp writes: If there was any lingering doubt as to tech's favored presidential candidate, writes USA Today's Jon Swartz, Hillary Clinton put an end to that Tuesday with a tech plan that reads like a Silicon Valley wish list. It calls for connecting every U.S. household to high-speed Internet by 2020, reducing regulatory barriers and supporting Net neutrality rules, proposes investments in computer science and engineering education ("engage the private sector and nonprofits to train up to 50,000 computer science teachers in the next decade"), expansion of 5G mobile data, making inexpensive Wi-Fi available at more airports and train stations, and stapling green cards on the diplomas of foreign-born students earning STEM degrees.
theodp writes: "Apple's gotten into the game of teaching kids how to program," writes Alex Handy in Apple’s free coding classes are a sales engagement. "Last week at WWDC, the company announced Swift Playgrounds, along with the intention to teach programming classes at its Apple retail stores for free. And I’m here to tell you this is a terrible approach, a bad idea, and generally little more than a marketing plan." And it's not just the $600 cost-of-entry iPad requirement that rubs Handy the wrong way. "Apple’s Swift Playgrounds is, frankly, a terrible way to teach kids how to code," Handy adds. "It’s teaching a little-known language that is only useful on one platform, and the Playgrounds undeniably favor drag-and-drop programming. And even if a kid does graduate and learn how to use Swift fully, they’re then tied into Apple’s platform." Hey, if he's upset now, wait'll Handy checks out Lesson 9 in the new Swift Playgrounds Teacher Guide, which calls for middle schoolers to learn the concept of parameters by playing a 35-40 minutes game of Siri Says!
theodp writes: Earlier this week, the Center for American Progress hosted a panel discussion on the case for K-12 computer science education with representatives of Microsoft, Code.org, and the White House. During the Q&A, top Microsoft lobbyist Fred Humphries and Code.org CEO Hadi Partovi were all smiles when a little old lady stepped up to the microphone, at least until the retired school teacher posed her question: "Do you have a statistic on those who leave the computer science work, because I was at a hearing several years ago when they were inquiring — I believe it was Microsoft — why are you bringing in foreigners on this special visa to do these jobs? And the answer was that Americans don't like to work alone and they were hard pressed to get applicants." An awkward few minutes ensued (YouTube). "That hearing doesn't ring a bell with me frankly," began Humphries, "I will say something though and try to address what you're raising on the H-1B, on the high-skilled visas...We're only doing around 40,000 [U.S. CS grads annually]...so you're having a shortfall when it comes to filling the needs, and so what does a company do that's a multi-national company?" Partovi added, "I think what you heard at that hearing doesn't reflect what's happening in the market. If people are importing people from the outside it's because literally the mismatch of 500,000 jobs and forty thousand graduates...you should question why are we importing this talent and not teaching it in our own schools to our own kids." By the way, the only-40K-CS-grads metric cited by Humphries and Partovi to dismiss the retired teacher's H-1B concerns was also used by Microsoft President and Code.org Board member Brad Smith in 2012 to dismiss a shareholder's concerns that Microsoft was calling for an increase in the number of H-1B visas at a time when so many American techies were unemployed.
theodp writes: With the release of a Teacher Guide for its new Swift Playgrounds iPad app, Apple's signaled it's now ready to deliver the coding lessons that CEO Tim Cook wants required in all schools (YouTube) starting at the fourth or fifth grade. "You can use this book in a stand-alone coding class or as part of any introduction to coding program," explains Apple Education in the newly-released Swift Playgrounds Teacher Guide, which it adds "is designed for teachers [with or without coding experience] to use with students in middle school and above." Here's an excerpt from Lesson 9 on coding using parameters: "Activity: SIRI SAYS (35 to 40 minutes) Have the class play a game of Siri Says by asking students to write their own commands using parameters. Ask students to write 5 to 10 commands in the Pages app using parameters. They should change the font color to identify the function and parameter, as they would in code. Be sure that the commands are doable in the context of a Siri Says game. Have students share their document with you via AirDrop or your preferred method. You'll now be Siri, deciding when or when not to say, 'Siri says,' when giving the commands written by your students [e.g., kiss your tummy]. After a few rounds, let a student be Siri. Play until there is a winner." In the accompanying student work example for the activity, Apple explains that "kiss" is a command while "your tummy" is a parameter.