13.07.2015 Views

Software Engineering for Internet Applications - Student Community

Software Engineering for Internet Applications - Student Community

Software Engineering for Internet Applications - Student Community

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Chapter 17WriteupIf I am not <strong>for</strong> myself, who is <strong>for</strong> me?When I am <strong>for</strong> myself, what am I?If not now, when?-- Hillel (circa 70 B.C. - 10 A.D.)If I do not document my results, who will?If the significance of my work is not communicated to others, whatam I?If not now, when?-- philgDo you believe that the world owes you attention? If not, why do youthink that anyone is going to spend 30 minutes surfing around thecommunity that you've built in order to find the most interestingfeatures? In any case, if much of your engineering success isembodied in administration pages, how would someone withoutadmin privileges ever see them?In code reviews at the beginning of this class, we often find studentsproducing source code files without attribution ("I know who wrote it")and Web pages without email signatures ("nobody is actually going touse this"). Maimonides's commentary on Hillel's quote above is that aperson acquires habits of doing right or wrong--virtues and vices--while young; youths should do good deeds now, and not wait untiladulthood. I.e., if you don't take steps to help other users andprogrammers now, as a university student, there is no reason tobelieve that you'll develop habits of virtue post-graduation. Analternative way of thinking about this is to ask yourself how you feelwhen you're stuck trying to use someone else's Web page and thereis no clear way to send feedback or get help. Or how much fun it is tobe reading the source code <strong>for</strong> an application and not have any ideawho wrote it, why, or where to ask questions. Continuing theTalmudic theme of the chapter, keep in mind Hillel's response to agentile interested in Judaism: "That which is hateful to you, do not doto your neighbor. That is the whole Torah; the rest is commentary.Go and study it."A comment header at the top of every source code file and an emailaddress at the bottom of every page. That's a good start towardbuilding a professional reputation. But it isn't enough. For everyremote from the large-scale processes of government. Our estimatemay seem extraordinary in the light of modern history: the nationstateshave grown mightily and their governments hold power overtens of millions, sometimes hundreds of millions, of people. But thesehuge powers cannot claim to have a natural size. They cannot claimto have struck the balance between the needs of towns andcommunities, and the needs of the world community as a whole.Indeed, their tendency has been to override local needs and represslocal culture, and at the same time aggrandize themselves to thepoint where they are out of reach, their power barely conceivable tothe average citizen."If it were possible <strong>for</strong> everyone to pile into a single community andhave a great learning experience, America Online would long agohave subsumed all the smaller communities on the <strong>Internet</strong>. One ofthe later chapters of this book is devoted to the topic of growing anonline community gracefully to a large size. But <strong>for</strong> now rest assuredthat it is a hard problem that nobody has solved. Given sufficientlyhigh quality magnet content and an initial group of people dedicatedto teaching, there will always be room <strong>for</strong> a new learning community.3.11 Exercise 4Identify sources of magnet content <strong>for</strong> your community this semester.If some of this content is going to come from other people, write tothem and ask <strong>for</strong> permission. Even if you're only using their workexperimentally, one concern that an author or publisher might have isthat your site will get indexed by search engines and readers will bemisdirected to your site instead of theirs. In practice, this is not aproblem if your server isn't accessible from the public <strong>Internet</strong> or ifyou include a robots.txt file that will instruct search engines toexclude certain content. You may get a friendlier response fromcopyright holders if you agree to provide a hyperlinked credit and toensure that their content does not become multiply indexed.If you have a client who is supplying all the magnet content, writedown a summary of what is going to be available and when. Next toeach class of documents note the person responsible <strong>for</strong> assemblingand delivering them. As an engineer it isn't your job to assemble anddevelop content but it is your job to identify risks to a project, such as"not enough magnet content" or "nobody has thought about magnetcontent".29455

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!