Sustainability and bit-rot
Upcoming SlideShare
Loading in...5
×
 

Sustainability and bit-rot

on

  • 1,164 views

Presentation at the JStor Workshop in Bangalore, December 10, 2010, on sustainability and bit-rot in file formats and software for websites.

Presentation at the JStor Workshop in Bangalore, December 10, 2010, on sustainability and bit-rot in file formats and software for websites.

Statistics

Views

Total Views
1,164
Views on SlideShare
1,104
Embed Views
60

Actions

Likes
1
Downloads
8
Comments
0

7 Embeds 60

http://hasgeek.tv.local 19
http://www.linkedin.com 18
http://paper.li 16
http://funneldev.hasgeek.in:3000 3
https://www.linkedin.com 2
http://static.slidesharecdn.com 1
https://twitter.com 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Apple Keynote

Usage Rights

CC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike LicenseCC Attribution-NonCommercial-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • \n
  • \n
  • \n
  • \n
  • Developers don’t care about sustainability. It shows all the time.\nWe’re going to focus on the second.\n
  • \n
  • Nobody works solo anymore. All software depends on some other software, maintained by someone else.\n
  • The cost of forking is high: maintenance is yours alone\n
  • \n
  • \n
  • \n
  • ZODB is the database of Plone. AMK highlighted the problem in 2001, but as late as 2010 we use Plone and then suffer database upgrade problems.\n
  • \n
  • HTML has too much gunk in it: text, markup, presentation, scripts, external resources, external links. Not all of it will survive forever. Some of it will (a) disappear or (b) become incompatible (mostly JS).\n
  • WYSIWYG editors produce garbage, so plain text markup formats are preferred.\n
  • \n
  • \n
  • ReST is incredibly powerful, but the only parser implementation is in Python, unlike Markdown which has an implementation in every major language.\n
  • The reflowable feature is a problem for fixed-layout content such as comics\n
  • \n

Sustainability and bit-rot Sustainability and bit-rot Presentation Transcript

  • Sustainability and Bit-rot Kiran Jonnalagadda, HasGeek JStor Workshop, Bangalore, December 2010
  • Building WebsitesWrite a specDefine a budgetRaise moneyHire a teamBuild!
  • Maintaining Websites
  • Maintenance Problems1. Team has changed Original developers not available New developers don’t understand the code Rewriting easier than documenting and fixing old code2. Software has to be upgraded Software is not compatible; bit-rot has set in
  • What is bit-rot?Software rot, also known as code rot or softwareerosion or software decay or software entropy, is atype of bit rot. It describes the perceived slowdeterioration of software over time that willeventually lead to it becoming faulty, unusable, orotherwise in need of maintenance. This is not aphysical phenomenon: the software does notactually decay, but rather suffers from a lack ofbeing updated with respect to the changingenvironment in which it resides. —Wikipedia
  • Old: Working on the metalNew: Software ecosystem
  • Beware of Forks:You are alone on the path
  • “Functionality is an asset, butcode is a liability. I will say thisuntil you like it.” —Ted Dziuba
  • Pattern: Custom ForkYou want a website Your custom feature is a popular request, so theYou found a CMS that has CMS also adds it andmost of the wanted features releases an updateDeveloper says he can add Your custom versionthe additional features you implemented it differently,want, so you commission it so you can’t upgrade: youDeveloper hands you code will lose data if you doand moves on
  • What you should doNever implement a custom Make it open source andfeature for yourself; the encourage adoption bymaintenance is also yours others; open source is useless without adoptionWhen you get somesoftware written, give the Open source is adeveloper an incentive to mechanism for distributingmaintain it without you the cost of maintenance to ahaving to pay for it large number of othersLet the developer own it This is hard
  • It’s not just you Software developers reinvent the wheel all the time, only to regret it later; the itch to reinvent never goes away “The shock of recognition came to me when I was sitting on the bus and reading the RFC for NFS, intending to write an NFS server on top of the ZODB so we could use grep and CVS. Suddenly I sat up and thought ‘I have an object database on top of a filesystem, and now I want to emulate a filesystem on top of it. What am I doing? Why not just use a filesystem in the first place?’” —A. M. Kuchling, April 2001
  • Software UpgradesAll major software systems evolve coping mechanismsWindows DLL hell in the 3.x and Windows 95 eraUbuntu 6-month upgradesPreferences for any software applicationWeb app customization: themes, plugins, standard config
  • File FormatsPDF and HTML are stable;files from 10 years ago stillopenPDF is not re-flowable;suitable only for archivingpaper layoutsArchivability is still aconcern
  • Raw HTML is tedious<h3> What is HTML5?</h3><p> The term HTML5 has come to represent not just the new version of hypertext markup language, but a suite of related technologies and proposed standards. These include:</p><ul> <li>CSS3, Geo-location, Web Sockets, Canvas, Client Storage, Audio and Video.</li> <li>Rich Internet Apps enabled by Advanced JavaScript Engines and Mobile Browsers.</li></ul>
  • Plain text markup Markdown### What is HTML5The term HTML5 has come to represent not just the newversion of hypertext markup language, but a suite ofrelated technologies and proposed standards. Theseinclude:* CSS3, Geo-location, Web Sockets, Canvas, ClientStorage, Audio and Video.* Rich Internet Apps enabled by Advanced JavaScriptEngines and Mobilewsers.
  • Plain text markup MediaWiki=== What is HTML5 ===The term HTML5 has come to represent not just the newversion of hypertext markup language, but a suite ofrelated technologies and proposed standards. Theseinclude:* CSS3, Geo-location, Web Sockets, Canvas, ClientStorage, Audio and Video.* Rich Internet Apps enabled by Advanced JavaScriptEngines and Mobilewsers.
  • Plain text markupBBCode Each of these converts easily readable plain textMarkdown into HTMLMediaWiki The original plain textTextile should be archivable, but each convertor is alsoWikiCreole subject to bit-rotReStructuredText There’s safety in numbers;And many more... how many use them?
  • Published text: ePubReflowable content; no fixedpaper sizeSingle archive file containseverythingThe most promising archiveformatTwo incompatible sub-formats:XHTML and DTBook
  • Image creditsHaulin’ rust, macro rust on a micro bus, thumbs up, thumbsdown, fork in the road