Tag Archives: week0

Web development sounds hard. But if you do it right it can be easy.

If someone told me, a former history major, that I would be enrolled in a web development class I would laugh at you. Then I would log off Twitter, because the trolls shouldn’t get you down. But… here I am. Ready to learn.

This week’s reading was a helpful collection of foundational texts for the class. Since I am starting out with no programming skills whatsoever it is helpful to read about how a lot of platforms aim to be as simplistic as possible.

The idea of simplicity not only as an esthetic but as a mindset was also discussed in Greg’s blog posts. Oftentimes journalists can get bogged down and not see the big picture. Thinking pragmatically and putting effort into making sure you’re being as effective as possible is an important mantra to have at the beginning of this class. I’m sure there will be a lot of bells and whistles that can be added to things, but remembering to stay in a minimalistic mind frame will be important for the class.

It also serves the actions of reporting as well. Sometimes I can get thrown into a tailspin looking for the perfect kicker, or spending an inordinate amount of time on things that a reader doesn’t care about. Getting out of my head and making sure that I’m working smart, and not hard, is an important lesson.

I also really enjoyed the basic primers of how the internet came about, and how it functions. It’s really easy to forget all the channels things have to go through to ping back and forth, and having a healthy sense of how things came to be from a historical and, well, factual standpoint can only help. When learning about a whole new field, a solid foundation of how we got to where we are today is important.

Overall, this coming semester looks like it will have challenges, but web development is a very exciting thing to dive into. After all, I use the internet for 95 percent of my job, so understanding how it works, and how we strive to make it simple is a good starting place.

GitHub profile: https://github.com/savvylee11

Analyzing The Evolution of the Internet

Github profile: https://github.com/ibasco

I found all of our readings very interesting because I never get challenged to learn about the history of the internet or web development. In this increasingly internet-driven world, this is content that will benefit us in the future going forward, especially as a woman who wants to learn how to code.

“How the Internet Works” was a great video because it condensed complex information into content that was easy and useful to understand. When I press “send” on an email, I never realized that computers break down the information into packets to make tweets, websites or photos. I also loved that they mentioned that the Internet is a “wire” — to think something so complicated and ubiquitous as a wire dumbfounded me because I realize the Internet really is something that makes life easier and may not be as complicated as we perceive it to be.

The “timeline of software languages,” and the “timeline of networking and the web,” were fascinating because learning the history of how technology evolved from Telex messaging to the mobile web and Plan Calculus to HTML5 and Heartbleed Bug was fascinating. As a millennial, the internet has always been fast and available to me but learning about its origins made me realize that like anything, technology had a long process before getting to where it is today.

“Computational thinking and journalism” were also fascinating because it got me to realizing how I can apply a background of web development and technology to journalism. How do I improve my audience’s experiences? How can we evolve, grow and reshape our thinking processes? It reminded me why I am still in school — it is essential for me to always be learning, growing and evolving as a reporter and thinker.

I enjoyed looking over the WordPress philosophy because it acknowledges that many WordPress users (including myself) do not consider themselves technically oriented. All they want to do is post content without any problems and not face too many complicated issues. I love that one of their points is to “strive for simplicity” — that is what technology is all about, making tasks easier for our users to get them from Point A to Point B.

I loved that the GNU Operating System outlined four essential freedoms of free software. Again, I never realized technology had so many philosophies and missions because when I use programs, all I think about how to navigate them. I never think about their underlying goal and what the companies’ goals are for creating these programs.

Finally, the Unix Philosophy was one of my favorite articles because it discussed the importance of writing elegant, robust code. It reminded me that no matter what I do, even in a field as fast and instant as technology, that I have to put sufficient time and energy into making something of any respectable quality.

I honestly am thrilled to learn more from “The Zen of Python,” and am excited I get to refer to the “Pragmatic Programmer Quick Reference Guide.” Overall, I am thrilled to take this course and am excited to see where the “doors of technology” will lead me.

Computational Thinking and Open Source Data

I find your comparison of computational thinking and journalism to be very interesting. It seems that computational thinking is just a more modern term and view on analytical thinking that incorporates today’s rapidly changing, technology-focused world. I have always generally thought there were two camps of people: the left brain, logical math and science people, and the right brain, creative writers and artists. Myself being the former. And this is actually partially why I went into communications, to challenge myself and force myself to learn to be more divergent, look outside the box. But we are who we are, and I naturally found patterns to guide my writing and use formulas to generate new ideas. I’m curious to see how this semester shapes my thinking (or my way of thinking shapes how I learn web development?) and whether it changes the way I approach my job in public affairs and future career path. 

I was listening to a TEDtalk podcast recently on open source data and how the concept has changed the world, and will continue to do so. The possibilities are limitless… I particularly liked two talks: one about open sourcing the design and functionality for an underwater diving robot, and the radical notion of an open source democracy where citizens vote on each issue before Congress. The host of the podcast talked about Linus Torvalds and his novel idea to open source his operating system Linux. ‘Free software” leads to new ideas and innovation, but also allows for people all over the world to get more affordable smartphones like the Android. I also heard a talk by Tim Berners-Lee on creating the World Wide Web and his, some would say insane, decision to demand the web be open source for all to use (aka. no charge.) But if he had not chosen that path, the WWW might not exist today, but instead would be millions of databases that don’t talk to each other.

I appreciate the other programming philosophies and guidelines, and look forward to a great semester putting it all to action!

Github Profile – https://github.com/xof88

An eye-opening introduction

GitHub Profile:https://github.com/alliefoard

 

My daily basis is spent wiring about different computer processes, due to working as an account coordinator at a PR agency that specialized in Federal IT programs. Although I am able to create content and understand keywords in the website sphere, I have only been aware of one side of the process. As someone who has no true experience in coding or web development, the assigned readings prior to class have helped illuminate a well-rounded background of all that goes into creating and maintaining websites.

In a world where websites and internet connections have taken over, it is easy to only think of the future instead of thinking about the past and what has brought us to this point. I was amazed while reading the timelines of computer software and computer networking to see how long ago the thinking up and first trials of these processes began. The first modem was created back in 1949, this was the year that segregation in the military was ruled out, to put it into perspective.

I was impressed that only 25 years later, the SABRE system was created for American Airlines. This was the first program that allowed travelers to reserve their airline tickets online. Today there are dozens of apps that allow the buying of flights to happen through phones and other devices, making this seem like a casual everyday thing.

Along with the upbringing of the technology, I was also surprised to find out how many different languages of coding there are. To the untrained person like me, it seems as though all websites would use the same type of coding language. However, this is not the case at all. The different languages create different types of systems and processes.

Overall, I look forward to training myself to see and understand the other side of the website curtain.

Evolution: Coding and Communication

Link to Github profile: https://github.com/amaliaks

It was interesting to see the developments of the computer starting from Konrad Zuse’s first binary code computer to Hopper’s involvement in creating COBOL or moving from numbers to words to control what a computer does. In 50 years, the internet, computers and programming has advanced dramatically. From someone who has not lived without computers and internet, it’s hard to imagine a time when computers and the internet did not rule technology and everyday life. Now, we are dealing with net neutrality laws and internet equality.

As the world of journalism, news cycles, and under the current administration, it is important to constantly be rethinking our thinking. It is no longer viable to be comfortable with your current skillset, you have to evolve, change, and adapt to new technologies and be conscious of societal values. In order to be successful as a communicator, today, I think it’s an important skill to understand the world of coding for professional growth and the success of your clients. I am new to coding and it can be overwhelming to look consider learning a new language and applying that to the work that I do everyday. At the same time, I know I have to rethink the way I approach content and strategy and have a full understanding of the different coding and framework methods to be successful; I hope to get that out of this class.

I have used WordPress in the past, but have never considered the rights or why the site was created. It is another platform to be able to connect people. While posting, it’s important to keep in mind WordPress’s bill of rights or core freedoms: The freedom to run the program, for any purpose.

  • The freedom to study how the program works, and change it to make it do what you wish.
  • The freedom to redistribute.
  • The freedom to distribute copies of your modified versions to others.

Main takeaways from what distinguishes free software from nonfree software:

  • The freedom to run the program as you wish, for any purpose (freedom 0).
  • The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
  • The freedom to redistribute copies so you can help your neighbor (freedom 2).
  • The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.

Free software is where the world is going—collaborating to create better and more useful for users around the world.

Reading the article “Basics of UNIX Philosophy” left me with the most questions. I am lacking the context of how to apply this philosophy without being able to see it first hand.

Beauty in Simplicity: The Internet, Programming, and Public Perception

My GitHub profile can be found here.

Prior to reading the “Timeline of Software and Languages” and “Timeline of Networking and the Web,” I was unaware of just how many different players and components were involved in forming the basis of the computing technology and internet that we know and use today. I especially enjoyed reading about and seeing the photographs of early computers and their initial applications in performing business functions. While early computers took up the space of an entire room, we now have computers in the form of mobile devices that fit in the palm of our hand and allow us to access information from nearly everywhere in an instant. The “How the Internet Works in 5 Minutes Video” also added to my baseline knowledge of computing and the internet. I found the video’s explanation of routers to be particularly enlightening. A router is something that many of us have in our homes, but I never fully understood how this device worked until watching this simple breakdown.

The two articles about computational thinking and journalism spurred my thinking about the intersections between the fields of programming, journalism, and public relations/communications. Students and professionals in these fields have the ability and opportunity to influence people’s thinking about current events, companies, organizations, and other people. As communications practitioners and journalists—and now as aspiring developers and programmers—what is our role in shaping the thought process of others and in influencing public perception, and how can we use programming language and web development tools to do this? I believe this class will give me the opportunity to explore the intersections and relationships between these fields.

As I read through “The Pragmatic Programmer Quick Reference Guide” and the software and programming philosophies, I noticed that each of these articles espouse several overarching themes that are also reflected in the timelines of programming and the web—ease of use, testing, improvement, and the continued pursuit of knowledge about coding and programming. In the Unix philosophy, one of the sections that stood out to me referred to the need to “encourage a software culture that knows that small is beautiful, that actively resists bloat and complexity: an engineering tradition that puts a high value on simple solutions…” (“Basics of the Unix Philosophy”). This idea that beauty lies in simplicity and ease of use for my target audiences and users will be a policy that guides my work throughout this semester. The WordPress software philosophy and GNU free software philosophy also lend credence to these themes. I am excited to learn how to use WordPress, and I am relieved to know that it has been designed to be easy to use and to adapt and improve for sharing with future users.

The aforementioned themes are important because I will use them as guiding principles for my work throughout this semester. How can I write code and develop a site that is simple, easy to use, and that caters to my audience’s needs while influencing their perception of my client or organization? How will I incorporate constant testing and self-guided learning to improve my programming skills and the look, feel, and user experience of my site? This summer, I look forward to learning as much as I can about the topic of web development, and will refer to the programming philosophies and reference guide as best practices to guide my efforts.

Analysis Post

Link to GitHub profile:   https://github.com/dyoungblood

Analysis:

I found the first video, How the Internet works in 5 Minutes, very interesting. I appreciated learning that the computers and laptops that we work from are not actually servers and are not connected directly to the internet; and that IP addresses are what help servers find each other. Whenever an email, picture, or web page travels across the internet, computers break the information into smaller pieces called “packets”. This is very beneficial to know because even when we are updating our Facebook statuses and sending out tweets, we are actually sending packets back and forth over the internet.

When reading The Timeline of Computer History Article, I enjoyed learning that mathematician, Grace Hopper completed the A-0, a program that allows a computer user to use English-like words instead of numbers to give the computer instructions. This was great to know because it was considered the first commercial business computer system in the United States. Meaning, the many computer systems we have been trained on during our previous employment and internships, all have been stemmed from Hopper’s creation.

The Timeline of Networking and The Web, was by far the most important article to read! It touches on how our main source of communication today was developed, TEXT MESSAGING ! This is important to know because we often just text all day, not paying any mind to how the method of communication was actually developed. Telex started as a way to distribute military messages, but soon became a world-wide network of both official and commercial text messaging. Telex used teleprinters, which dated back to the 1910s for use in telegraphy. The telex system connected those teleprinters to each other over voice telephone lines, routed by modified telephone switches.

Computational thinking and journalism: part 1 and part 2

The discussion of the “programmer-journalist” in part 1 taught me that these are the necessary questions you must ask yourself as a journalist who can do web development…..What would optimize my readers’ viewing experience? What do they want to see? What areas of online journalism are critical for us to take advantage of? This definitely makes me think out of the box.

The most beneficial information I learned from reading WordPress Philosophy, was that as a developer, you must design for the majority. The users that we must design the software for, end users of WordPress that are non-technically minded; They don’t know what AJAX is, nor do they care about which version of PHP they are using. The average WordPress user simply wants to be able to write without problems or interruption. They are ultimately the ones who will use it the most. This simply means , the developer must keep it simple. This idea is especially important to me because I ultimately want to run my on digital magazine , and want to develop a page that will be easy for the digital audience.

The GNU Free Software Philosophy contained a ton of useful information. The most important facts touched on Rules about packaging and distribution details.  it is acceptable for the license to require that you change the name of the modified version, remove a logo, or identify your modifications as yours. As long as these requirements are not so burdensome that they effectively hamper you from releasing your changes, they are acceptable. I think every developer must learn and always know the four essential freedoms…..

1.The freedom to run the program as you wish, for any purpose, 2. The freedom to study how the program works, and change it so it does your computing as you wish; 3. The freedom to redistribute copies so you can help your neighbor (interesting for me to read, because this can sometimes conflict with ethical standards of a journalist); 4.The freedom to distribute copies of your modified versions to others.

Basics of the Unix PHILOSOPHY

The best words in this article were established by Dog MCIllroy. ….Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.

The Python Software Foundation / Zen of Python is something that I would like a better understand of. I am curious to learn more about it in depth.  The Pragmatic Programmer Reference Quick Guide is information that every developer should keep handy.

 

 

Course Preparation – Summer 2017

Welcome! Our first class session is Wednesday, May 24 from 5:15-8:15 p.m.

Be sure to thoroughly read the syllabus as soon as possible.

The readings, site registrations and software installations below must be completed by Sunday, May 21 at 5 p.m. The analysis post is due by Monday, May 22 by 10 p.m.

  • Required: Write analysis post that includes why these ideas matter, what you found most interesting and your main takeaways from topics discussed
    • Include a link to your GitHub profile in the post

**Notes on required software:

  • These three programs must be downloaded and installed before the first class to be sure you can hit the ground running.
  • If you have problems installing that you can’t resolve by searching online, please contact the instructor as soon as possible.
  • After you install them, you don’t have to start using them before class starts, but you’re encouraged to explore what they do and why we’ll be using them.
  • Important: Don’t change any MAMP or XAMPP settings unless instructed.

Everyone will receive an individual login for this WordPress site so you can submit the analysis post. If you haven’t used WordPress before, please see the first section on how to post. Be sure to:

  • Add a title that briefly describes the content, themes, etc. of your post
  • Under “Categories,” check the box for “2017 Summer class”
  • Under “Tags,” add one called week0 — with no spaces between week and zero (it will be one of the suggested options when you starting typing “week”). After that you can add other tags that are relevant to what you discuss in your post (e.g. history of programming, computational thinking, etc.)
  • If you don’t want your post’s content publicly viewable on the course blog, please change the “visibility” to “password protected” in the publish box (top-right of the post edit page; see instructions) and enter the password I sent by email. That way everyone in class can read it, but not the wider web.
  • Change the status to “pending review” and save

Be sure to subscribe to the blog to get all the updates posted here:

After you submit, I’ll read your post and send individual feedback as an “Editorial Comment” (e.g. if I mention any feedback, corrections, copy edits, etc. needed). This is feature made possible by the EditFlow (editorial workflow) plugin. You can reply with another editorial comment and let me know the changes have been made and I can publish.

If there are no corrections or edits you need to make, I’ll make any more conversational comments publicly so others can see and contribute to the discussion.

Update, 5/21/17

In addition to what’s in the syllabus, about about analysis posts:

Analysis/update posts (~300-400 words, 11 total): For assigned readings and self-learning, write reactions and highlight what you found most interesting or had questions about on the course blog. These posts should be a mix of synthesis to show your understanding of the material as well as like a journal of your progress (here’s what I did, here’s what I’m going to do, here’s what hurdles exist, etc.). These are generally due a day after the assignment is due so you have time to reflect on what you learned. Due: Mondays by 10 p.m., unless otherwise specified

Here is some additional information:

The weekly analysis posts don’t need to touch on every single thing covered, especially this time because there was such a variety of material. Ideally, in the case of a reading/video, a post will explore a particular theme or topic you found most interesting. Choose one (or a few) things and go into more depth.

In the future, if most of the work assigned one week is skills-based or project-based, you can reflect on that experience. Also, as mentioned in the syllabus excerpt, those assignments will be when you want to talk about progress you’ve made and any hurdles.

Some brief explanation can be ok, but definitely avoid summarization for the analysis posts. You don’t have to prove you read everything — if that was the case we’d have quizzes 🙂

The point is to do one or more of the following — or something along these lines:

  • analyze the materials
  • find connections between the materials within a given week (or, in the future, between weeks)
  • relate something to your experience (how it could help you, how it enlightened you about something, etc)

If you’ve already submitted, feel free to re-work your post before the first class if you’d like to explore a few things in more detail.

Also, be sure to link back to the materials you reference in your post.

Please let me know if you have any questions by email or in the comments below. I look forward to meeting everyone at the first session of class!

Introduction Class

Like most first classes, we started out by introducing ourselves and our purpose for being in the class. What stood out to me though is that this was the first time I’ve been in a class and everyone had close to the same experience and hopes for the class. It’s nice to go into this class with people on similar levels because it will be that much more gratifying to see where we all started and where we’ll finish. It seemed like most of us are taking this class to be able to troubleshoot and manage our own portfolio pages, so we may even be able to help one another at some point.

We didn’t even touch our computers this class so I’m sure this sense of calm I have will be replaced by stress in the near future once we dive in. I like that Greg is realistic about this course and doesn’t seem to expect masterpieces from us. Most of the people I’ve talked to that know code have either taught themselves or felt like it was just their calling and learned it at a young age. The vibe I get from a course like this is that the learning is in our hands. Greg will give us the essentials on a platter but how good we get at it will be through just a lot of practice and searching ourselves. As much as I look foward to seeing my finished product (and others’ as well), it is all a little intimidating. I want my website to be this amazing site once we’re finished, but I’m comparing my hopes to work of coders’ that have done this for at least half of my life. Regardless, I am excited to see what this semester has in store for us.

Course Preparation – May 19, 2013

The pre-session reading materials provided a great overview into the internet, platforms, and methods which can be used to create blogs, such as WordPress. I know feel that I have a better understanding of Unix and WordPress and the creators intentions for creating the systems, I hope this deeper understanding helps me learn the WordPress program.

Timeline – It was interesting to see what people are expecting from technology. Personally, I feel that we have not seen anything yet. I have always felt that eventually our world will reach a Jetson era; I cannot wait to own a flying motorcycle and or a robotic made which does everything run errands, cleans, hair, nails, accounting, etc.

Rethinking Our Thinking presented different ways to look at programming. Who would have ever thought that selecting which line to stand in at the grocery store could be related to performance modeling, or that a decision to buy skies versus rent is a form of online Algorithm. If we could make everyday life connections to learn technology, engineering and math, it would be so much easier.  A second item that stood out in the article was the section about commenting on your code. After going over it in class, I must say it is an amazing feature. It is like adding comments to a word documents and or PowerPoint love it!

WordPress Philosophy – The WordPress philosophy appeals to me as a user, one I do not have the desire to learn complex programming, but I do have the desire to communicate nutrition related information to the world. WordPress seems to have opened the doors for non-technical users to market products and/or information online in a cost-effective manner. I look forward to learning more about it.

UNIX Philosophy – The Basis of UNIX Philosophy article was a surprise to me. Working as a consultant for IT has provided opportunities to work with extremely talented Windows and UNIX specialists. Conversations about the complications which are encountered by UNIX developers suggest that they are not applying the philosophies outlined in the article. I believe the major challenge which has led them down the path of complexity is the lack of communication within teams and between business and IT. They seem to find it easier to write complex code that is challenging to understand and costly to maintain than reach out to others to understand what was done or how to effectively write the code. The only thing that comes to mind is job security and/or they see complex rules and codes as a challenge which leads to improved skills, but to in actuality it leads to systems which hard arduous to troubleshoot  and costly to  maintain.