Download What is Computer Programming?

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Why Should Communicators
Learn To Code?
@CindyRoyal
Associate Professor
Texas State University
Stanford Knight Journalism Fellow 2013-2014
slideshare.net/cindyroyal
“Learning these skills isn’t just important for your
future, it’s important for our country’s future.”
Barack Obama
“Everyone should learn a computer language,
because it teaches you how to think.”
Steve Jobs
Coding is becoming an important literacy
• Supports algorithmic thinking
• Develops a problem-solving
mindset
• An expression of innovation
and creativity
• Provides a perspective on the
tech environment
Computers will be a part of any media
career and most other careers
Data, data everywhere
People will get information in a variety
of embedded and atmospheric ways
Storytelling has become interactive
Retrieving data: Scraping and APIs
We have a high % of women in the
mass communication discipline
An opportunity to address the digital divide
Jobs!
• New York Times, Interactive News Developer
“The job requires solid coding skills and the ability to execute.”
“Expert-level of standards-driven CSS, HTML, JavaScript.”
“Experience with Ruby, Python or MySQL is a plus.”
• Quartz, Reporter on “Things” Team
“Quartz seeks a reporter to help us commit acts of journalism with code.”
“Chiefly responsible for our data-driven and visual journalism, from
charts to interactive graphics to news apps.
Background in “front-end Web development, systems administration,
statistics, data science, design, writing or information architecture.”
Jobs!
– BuzzFeed, Data Journalist for Investigative Reporting Team
“Track record of using data to find, tell and reinforce powerful stories.”
“Be proficient in at least one modern programming language.”
– Austin American-Statesman, News Application Specialist
“Programming skills to develop apps for HTML5/CSS3/JavaScript.”
“Familiarity with Web APIs and common data visualization libraries.”
“Experience with a web development framework such as
Rails or Django is preferred.”
Work with a CMS
The rise of the media platform
• The content management system defines a media
company’s business
• Who can publish, participate and share?
• What kinds of stories can be told?
• What kind of analytics are available?
What is Computer Programming?
• Problem solving using computer code
• Working with and developing algorithms to accomplish
specific tasks
• Web development is a type of computer programming
• Combination of content, design, functionality and data
• Computers are dumb, but obedient –will do what you
tell them.
• It’s fun! Provides a sense of accomplishment.
Types of Languages
• Markup languages – HTML/CSS
• Interpreted languages – JavaScript, Python, Ruby,
PHP
• Data-oriented languages – SQL
• Web Development Frameworks – Bootstrap,
Django, Rails
• Libraries - JQuery
Coding Syntax
• HTML/CSS – foundation of the Web, provides
structure and styling of Web pages.
• Logic-based languages:
– Data types and variables
– Logic via if statements and loops
– Functions
Coding in the Curriculum
•
•
•
•
•
•
•
HTML/CSS
Bootstrap
Wordpress
JavaScript/JQuery
Charting Tools
Python Web Scraping/API
Web Frameworks
Tech in the Curriculum
• History of computers, Internet
and Web
• Social and cultural effects of
technology
• New business models/platforms
• Network effects
• Technology entrepreneurship
• Social media
• Data
• Tech news
• Communication skills introduced
in these contexts
New Major Proposal
• Digital Media Innovation – a digitally immersive major for
a subset of students.
• Same core as other majors: Intro. to Mass Comm, Media
Writing, Media Law and Digital Fundamentals
• 15-18 hours in digitally focused courses – Web Design,
Programming, Multimedia, Advanced Social Media,
Analytics, Entrepreneurship, Mobile
Reporting/Development
• 6-9 hours in traditional courses
How?
• Partner with computer science or other technology
departments
• Find community resources
• Allow and encourage faculty to seek these
competencies
• Prioritize when hiring
• General faculty development around technology
awareness and literacy
Get Started
• Codecademy.com
• Lynda.com
• Google Charts, MyMaps and Fusion
Tables
• Chart.js or HighCharts
• Coding meetups/hackathons in your
community, like Girls Who Code,
Hacks/Hackers
• CodeActually.com
Get Started
• Introduce technology concepts:
– Agile Methodologies
– Design Thinking
– Prototyping
• Spreadsheet basics
• Chartle/Wordle
• Review great work