Becoming Agile

Agile: A paradigm for software development teams based on flexibility and motivated individuals

As a mere 22 year old Compsci major with a single internship to map the territories of team oriented software development, I had never heard of agile until my most recent professor began to evangelize it in my projects class. Blindly, when I went to interview at his company I rambled on about how I would love to try the agile workflow, internally believing that it was the answer to the debilitating anxiety that made me leave my last job. He seemed impressed, but had he known that last part would have called bullshit on the spot.

Now that I use agile in my class, it’s a bit of a slap in the face to see it is not the fixall solution prescribed by its advocates. While I thought that it would solve problems of uncertainty with small understandable tasks with unambiguous difficulty ratings and face to face clarification, I was shocked to find the first article in my search on HackerNews declaring the “Death of Agile” (written by one of its founders nonetheless).

The main point of the article was that agile is actually meant to be anxiety provoking, saying “your brain is not wired to work with agile methods” and “agile teams work on the brink of chaos”.  In attempting to beat the real thinking out of the process with rules and clarifications he accuses developers of delving into nonthinking and stagnation.

I’ll admit that I’ve found myself there once or twice… and probably the last 6 weeks. Reading this article pointed out a little of my own bullshit recently, a mix of mild burnout and senioritis, so I’m grateful to have stumbled upon it. It’s time to shake things up and start creating rather than indulge in glorified procrastination by reading all articles on a new software before trying it myself.

I think agile is a brilliant paradigm, if I can learn to myself, “become agile”.  It seems to be a balance of leaning into the discomfort and putting in a full day’s work every day, and in the face of hard problems choosing a better mantra like “today I will make progress” “I will figure this out” or “I can do this”. The only thing that will reflect poorly is shying away from the unknown and not doing the work.

Because when it comes to innovation (which is nearly synonymous with software development) there is no room for mindless checking of boxes and guided direction. The field is by definition creatively solving problems with new technologies, and there’s nothing comfortable about that. Crap.

Advertisements

The Future of Data

This is an article on the changing state of news reporting, especially under the tensions of the new administration and how collaboration with innovators in tech might help forge a new path for journalists.

______________________________

If you’re like me, you’ve started getting annoyed (or subtly concerned) about the amount of requests for donations and subscriptions on news networks like The New York Times.  With new technologies like social media and the internet, print journalism has been struggling for years. It’s not a surprise that most people prefer a one-stop Facebook shop for all forms of media catered to their unique interests, but the consequences are extreme when such sources are not fact checked or regulated.

The purpose of journalism has always been to ensure integrity and openness in our democracy and there is no real substitute for the checks and balances in which the press influences public opinion for democratic action. Citizens are right to be unnerved by attempts to stifle well-established (though admittedly biased) news organizations like The New York Times.

This example is simply to show the precarious position of news organizations recently and their uphill battle. Newer forms of coverage use mockery as a popular method in an attempt to close the gap between the clickability of social media and spread of information, though it is concurrently divisive and plays on touchy egos. It is unfortunate that most people (like the current president) would prefer to get such inflammatory news from sites like Brietbart, or Buzzfeed.

Whether or not people are willing to change their attitude towards facts, data and scientific evidence is uncertain. Nevertheless, it is time for journalism to take lessons from entrepreneurs, computer scientists and innovators. Given that any citizen can publish their opinions online now, including false information for profit under the guise of authority, traditional journalism training prepares writers for a field fewer people are willing to pay for.

Sites like the Propublica Nerd blog and small meetups around the country founded in data journalism are a great place to start, where data science meets story. Journalists are no longer the gatekeepers of information and in order to save the field it will be interesting to see if they survive or adapt more technical skills to thrive.

So you want to study Compsci

In Hackers and Painters Paul Graham, founder of startup accelerator YCombinator argues that the entire term “Computer Science” is misleading. He immediately argues that hackers are themselves makers, much more than scientists or engineers to which I could not agree more. I can empathize with Graham a bit, who went to art school after his Philosophy degree, since I began college in oil painting and glassblowing. Now we both are interested in the creative opportunities tech can solve, only he has the PhD in Computer Science to prove it. Personally, I’m still working on it–a bachelor’s that is–but I’m thankful to have crossed paths with Computer Science at all given it’s bad PR.  I was only introduced to coding per chance when trying to be practical and make a buckby switching from fine art to graphic design in order to incorporate art into the supposed “real world” my engineering father always alluded to. Turns out it wasn’t a graphic art course and I actually really enjoy coding.

Currently I’m trying to convince my boyfriend’s younger brother, let’s call him Aaron, to consider computer science. He wants to like it, but thinks he hates it because it’s harder for him than Spanish and it’s impossible to get the code to work. From my experience, the people who really like computer science are the ones that have somewhat of a moral dilemma with walking away from broken code rather than allowing themselves to get bested by it. A willingness to give up will not take you far when a missing semi-colon will break hours of hard work. For someone like Aaron it can be so frustrating to watch other students race through mini programs, but I remind him as I remind myself that any challenge is a matter of persistence and an unwillingness to be out-Googled. I tell him that he just has to allow himself get frustrated enough and unwilling to accept defeat. What is more dangerous in battle against the compiler is apathy and giving up, for the compiler knows no sympathy, nor autocorrect.

One thing that’s amazing about Computer Science as a field is that if you Google hard enough, all known answers are online and there’s an open dialogue about them via StackOverflow. Learning to Google has made me infinitely better at asking questions concisely with keywords which carries over into any form of research, and even life itself. Eventually when the program finally compiles there is a cathartic release of all the inner preceding anxiety and frustration. The compiler relents, with a humble “success”. What a high schooler like Aaron or a college freshman doesn’t understand  is that their peers that solve Compsci riddles so easily have probably been coding since they were 12 and already had that Aha! moment, when the compiler relents and they realize that they can write successful code. (If you are having any sort of math anxiety, you must read Kalid Azad’s blog, a Computer Science graduate from Princeton and successful YCombinator entrepreneur who while completing his degree translated technical language from the pillars of Academia into empathetic metaphors fourth graders can grasp without intimidation.)

Because there are so many resources on the internet, there is no way for someone like Aaron to predict how much knowledge and experience different peers can walk in with. Much like drawing, where onlookers describe success as mere talent, it is important to acknowledge prior experience and practice. And while it’s true that some measure of talent may play a role where some simply draw top to bottom with no rough draft, gracefully transferring their imagination onto paper, there are also very accomplished artists that angrily draw a circle 10 times over with an eraser in hand before it’s an acceptable circle.

At the end of the day, computer science needs a PR shift. While its true that some (few) students can articulately map out a function the first time they approach it, I prefer Graham’s depiction of hammering his hands furiously against a keyboard, vomiting code into the text editor, and rearranging it until it works. My old boss used to say that engineering is 1) making something work and 2) trying to understand why that thing worked.

So much like art itself, coding can teach many life lessons. Namely, hackers and painters don’t give up. They ask the right questions and experiment until it’s beautiful– imagine approaching any problem in life that way. So many students *cough* girls *cough* are cutting themselves short by buying into Compsci’s bad PR.

_________________________________________

A growth mindset provided by the internet and open source is only one reason why computer science is a great choice. The next post will cover the opportunity computers present.