{"search" : [{
    "url" : "/blog/displaying-your-full-sized-you-tube-thumbnail-or-a-custom-og-image-in-a-twitter-card/",
    "title" : "Displaying your full-sized YouTube thumbnail or a custom OG image in a Twitter card",
    "text" : "displaying your fullsized youtube thumbnail custom og image twitter card days past links videos used show nice image could specify poster wanted over would appear along with embedded video playerthese days have been downgraded only small which frustrating anyone wanting share their visible inviting call action watch them effort make stand out attract clicks again some taken attaching images directly tweets which while making them visually appealing get way clickthroughs people find themselves just seeing larger version rather than viewing video can fix this crafty use netlify&#39;s edge functionshow enriched link shortener time &#39;ve using redirects api own simple shortener lets create short urls sharing resources domain that knowledge don&#39;t need depend third party linksharing service read about blog post wrote explaining including handy little utility kent c dodds expand technique (also see kent&#39;s explainer even more background info)these combination raycast script creating new snap url raycasthaving shortener like provides opportunity offers chance add logic customise what everyone ( everything) follows those will see unfurling this: small default preview shoes they look shows when ask nicely viewhow offer different view crawlers unfurlerswhen other tools social networks they visit &amp;quot;unfurl&amp;quot; order display found there give services hints &#39;d metatags head our htmlsince netlify introduced functions &#39;ve had ideal tiny bit into return page template anything looking unfurl its opengraph imagehow detect visiting urlwhile serving experiences visitors based brand browser generally understood bad idea should instead feature detection are trying work around differences support features need here match needs useragent sniffing decide redirect visitor points instead code function javascript ( typescript prefer)// detecting requesting user agentconst agent = requestheadersget(&quot;useragent&quot;);(agentincludes(&quot;twitter&quot;)) { // got something twitter!} shared domain won&#39;t automatically impose decisions defaulting mini card all html appropriate data (which from &#39;re pointing ) this fetches open graph destination url// fetching page rendering template// import cheerio easy dom interrogationimport * &quot;https://esmsh/cheerio@100rc12&quot;;// final via lookupconst await fetch(`https://customshortlinknetlifyapp/${urlpathname}`);const destinationtext();const $ cheerioload(html);// grab siteconst title $(&#39;meta[property=&quot;og:title&quot;]&#39;)attr(&#39;content&#39;) || &quot;&quot;;const description $(&#39;meta[property=&quot;og:description&quot;]&#39;)attr(&#39;content&#39;) site $(&#39;meta[property=&quot;og:site_name&quot;]&#39;)attr(&#39;content&#39;) orginal_image $(&#39;meta[property=&quot;og:image&quot;]&#39;)attr(&#39;content&#39;) &quot;&quot;;now render request made twitter&#39;s string// template string literal poke variablesimport &quot;/ogpagejs&quot;;// populate htmlconst ogpage page({ site: site title: title description: description path: urlpathname domain: rootdomain orginal_image: == &quot;youtube&quot; : null});return response(ogpage headers: &quot;contenttype&quot;: &quot;text/html&quot; }}); resultsnow by convenient any youtube large format within tweet clicking following directly youtube nicebonus how urlsthere&#39;s more! now displays twitter relay one specified urlthis us branding shortened twitter expanding list strings detect same places image slack mastodon linkedin others few lines function matches path link problem intended owners page&#39;ve &#39;m doesn&#39;t own enhance purposes below previews conference where &#39;ll speakingtry yourself experiment without needing buy pay anything try deploying demo repo detects unfurlers renders also includes netlifyshortener instructions system wide command quickly shorten hardest part thinking good register domain ( domains too want whole thing)resourceslink github repoautomatically clone deploy netlifykent dodd&#39;s helperhow linkcustom netlifyhow findthat works"
  },{
    "url" : "/blog/on-song/",
    "title" : "On song - Finding my lost voice",
    "text" : " song finding lost voice love music all sorts particularly sound voices many voices harmonising resonating together gives goosebumps &#39;s magical ever since one moment early teens &#39;ve felt that wasn&#39;t something could been silenthowever after more than 30 years bashfully hiding singing voice feeling embarrassed even privacy driving car own with shampoo eyes shower finally found voice &#39;m going gush about few paragraphs don&#39;t mind soundchecking classical chorus l&#39;auditori barcelona &#39;re always talking front people why would shythere&#39;s backstory two folks who have tried drag kicking screaming karaoke may heard some version mounted defense squirmed free trying that can share less desperate pleading tone knowledge there&#39;s happy ending this now here goes used school choir primary school ’m sure “ treat” parents thinking back first time group little concert perhaps 8 old still recall getting unexpected lump throat from coming together then came teenage years 13 giggling class mates had very naff singlong around piano our music lesson kids heads down book muttering way through pedestrian annoyed by chattering (fair) teacher made decision use punishment stand sing solo twice breaking changing general boy awkwardness turned humiliation failing adequately hit notes ultimately falling silent class into fear stayed day maybe don’t teachers deep popular might along wayyy out register ’ve deeply any context matter how friendly environment forced myself try ignore wedding day sang hymns burning cheeks most stressful part entire experience ( &#39;d seating plan figure out)karaoke kryptoniteside note: force people join feels awful somewhat triggering those really aren&#39;t comfortable microphone others just much fun allow said listen cheer happier times… 2019 wife joined local rock due her own realisation adult rewarding liberate yourself worrying judgement things sheer joy bravo say herafter 10 months loving convince like too (with enthusiasm every ’d glass wine) she convinced go give try ukwide audition learnmusicbyrote accessible group won&#39;t lie terrified prepared taster session gloriousseated only 5 men bass section 150strong choir mostly consisting women senior sheepishly confronted fears instantly loved ( range joy!) wonderful leader taught us each passage 4part harmonies which resonated chest feel welcoming wonderful hookedmusic powerful quite emotional often wet sang all although ’s comical case learned choir… super trouper abbawhatever banger! ’ll defend abba last breathsince then never miss session thursday nights are booked this runners london marathon’ve performed loads places too marathon debut weekend several choirs got london&#39;s regents park incredible! large park londonvolume abbie special she’s hugely gifted wonderfully patient friendly supportive 18 also runs called 180 voices audition focus pieces what step terms challenge attainment february 2022 verity too them royal college music menin gate belgium l&#39;auditori barcelona choir&#39;s summer tour concert edinburgh fringe august adore being its community singers much outside basilica near barcelonareaching high notesnow officially addicted looking more chance continue growth singer choir decided add calendar admiring hertfordshire happen rehearse 15 minute drive away they legitthis requires auditions join reauditions gulp! prospect standing piano order assessed accomplished musical director accompanist well regarded unthinkable short ago thanks encouragement learnings camaraderie confidence received other choirs applied participated 4 rehearsals while waiting audition arranged involved sightreading challenging ( wonderful) 130strong talented singers required skills yet hard work end new &#39;d quickly come love came age 13 ( took 35 years) luckily classmates excellent pianist director pieces accompanied exercises test listening/repeating phrases nervous worked prep welcomed passing source immense personal pride journey immersed preparations upcoming place middle cadogan hall london father were both there watch bruckner&#39;s mass e minor will todd&#39;s blue beamed proudly audience epic! beaming pride myself stage herts chorusencore&#39;m now often thought would wife&#39;s determination grew acceptance leader friends fellow members doing wonders physical mental healthnow long journey practice backing track concerts opportunities hold same truly recovered boy get different form 3 member above making rediscovering can’t recommend enough academy performance chorus"
  },{
    "url" : "/blog/host-your-twitter-archive-and-make-it-searchable/",
    "title" : "Host your own Twitter archive and make it searchable with Edge functions",
    "text" : "host your own twitter archive make searchable with edge functions recently made decision reclaim content from all tweets part website many other people similar call once twitter’s future began look uncertain unhealthy truth told ’d intended this some time because ’s nice keep control content also wanted ensure that posts mastodon platform du jour would accumulate same addressable over time giving everything url domain could live long wanted’ll describe how mastodon automatically accrue website another post first more pressing matter unhitch wagon sensibly incorporate every tweet ever posted since 2007 into site adding around 25000 new pages site which currently pregenerated using eleventy hosted static assets netlify requirements unique tweet index listing chronological order link back original location where each item posted ability search tweets performance seo accessibility robustness reasons had nonfunctional requirements cared very much about:non functional requirements clientside javascript required fetch display any contentall links them indexable by engines being present crawlable html site site’s build remain manageable even while accommodating these 25k pages complexity code explode realms something couldn’t maintain ruin mental model its content approachok plan…get data twitterformat condense ready use buildgenerate paginated archived builddon’t generate page individual until requesteduse function provide simple search little detail:1 grab requesting export archive writing still that what get includes webbased interface explore are json files2 format data exported massive want single file contains containing just metadata need when populating node script massage shape worked perfectly onetime effort gave leaner build ’ll tuck full zip away somewhere attic old dvds boxes3 tweets already generator turns templates nicely indeed feeding let set 25 each feels about right number scroll through before having navigate page yielded under 1000 pages child’s play now builds 1200 1 second ( macbook pro)4 don’t requested’m eager advance can thousand urls fast like pregenerate important pragmatic key keeping manageable deferring rendering requested can save almost 24000 might never requested (don’t wrong pure gold than others)by netlify demand builder function wait person requests see specific tweet then handy archive generated will added latest deploy been last view generated build5 searchhere’s place ’m rewarded slimming down file access means string matching against tweets along side framework ( frameworkless) site utility convenient used internals such easily available resultshappily complete 2022 available served dependency delighted have additional related chose themvisitors able filter tweets bookmark share term lot pretty simplistic moment certainly capable general needs idea evolving lunr basic approach swap querying lunr’s toolswhat times local development machine takes between 09 12 seconds that’s generating 1200 files building deploying sitemini tangent alertthere 2 main elements impact times generates assets deployment makes cdn although deploys atomic netlify there cleverness behind scenes avoid duplicating storage propagation assetsthis changed take longer version few updated irrespective run firstmost deployments updates additions resulting 3540 range occasionally global rollout design update global navigation seeing those 35 4 minutes thousands distributed following manageable"
  },{
    "url" : "/blog/alias-your-mastodon-username-to-your-domain-with-one-netlify-config-setting/",
    "title" : "Alias your mastodon account to your own domain with Netlify redirect",
    "text" : "alias your mastodon account own domain with netlify redirect did know could use username without hosting instance can done single ruleone nice things that move from one instance another ever feel need combination handle name instance &#39;m currently indiewebsocial very happy there perhaps day &#39;ll want different would have control consistent username associated lovely happens this simple achieve webfinger associate address control any instance instead sharing @philhawksworth@indiewebsocial @phil@hawksworxcomphil nash gave good explanation his website phil explains:implementing requires respond request /wellknown/webfinger json representation accounts check out what looks like by making https://#{instance}/wellknown/webfingerresource=acct:#{username}@#{instance}his solution simple got thinking simplify even further achieve rule which achieved simply netlify where happen host siteall need add rewrite rule netlifytoml will trick:[[redirects]] = &quot;/wellknown/webfinger&quot; &quot;https://instance_name/wellknown/webfingerresource=acct:user_handle@instance_name&quot; status 200 site:[[redirects]] &quot;https://indiewebsocial/wellknown/webfingerresource=acct:philhawksworth@indiewebsocial&quot; 200now requests hawksworxcom/wellknown/webfinger return user data held indiewebsocial anyone searching @phil@hawksworxcom find decide new instance keep same updating rule"
  },{
    "url" : "https://dev.to/philhawksworth/what-i-learned-from-automating-millions-of-web-site-deploys-3akg",
    
    "title" : "What I learned from automating millions of web site deploys",
    "text" : "what learned from automating millions web site deploys lessons automated deployment over 4 years how edge functions can help posted dev"
  },{
    "url" : "/blog/prerendering/",
    "title" : "Prerendering is the key to a tasty Jamstack",
    "text" : "prerendering key tasty jamstack 2019 seemed year that term started really grow popularity with more web developers than ever before approach have believed many years netlify (where work) created enable exactly this type architecture indeed coined very term can sound confusing there are number emerging interpretations opinion one aspect which absolutely key: prerenderinghere short explanation about whyby &amp;quot;prerendering&amp;quot; mean &amp;quot; generate site advance&amp;quot; different generating each page view response request from user traditional model these days prerendering brings advantages:speed when all work turning data templates into markup done ahead time serving faster doing demandsecurity since prerendered our response serve static assets huge advantages terms complexity security hosting infrastructurescale &amp;quot;dynamic&amp;quot; stacks assemble la minute struggle times heavy load capacity planning art itself strategy introduce complex caching layers hold snapshots common database queries commonly used assets even views cached cdn by default fearing being &amp;quot;slashdotted&amp;quot;certainty while some excited suggests serverless (indeed take maintaining webserver refreshingly out equation) describing only partially accurate wonderful companion sites (&#39;ll save another post) certain pages correct before deploy them like talk putting distance between technical complexity newback day were built way crafted assets served them statically later introduced mechanics cgibins databases make content dynamic soon turned backs inherent assetsjamstack just label modern tools services emerged help deliver website experiences whether they dynamic personlised large small javascript talking apis its heart unsung hero stack much possible enjoying benefits working with assets"
  },{
    "url" : "/blog/eleventail-a-helper-for-tailwindcss-and-eleventy/",
    "title" : "Eleventail - A helper for TailwindCSS and Eleventy",
    "text" : "eleventail helper tailwindcss eleventy often find myself making sites side projects starting point these tends evolve course depends requirements project have very common basic set needs tools that like use lately &#39;ve been learning enjoying using tailwind css utilityfirst css combining with eleventy which use static site generator fun productive made simple project bootstrap shared template githuball need now silly pun portmanteau name wait behold! born!what does provideeleventail just when building where want have:eleventy generation configured some conventionstailwind utilitybased pipelinepurge stripping unused minifying resultuglify js javascript build pipelineserverless functions development pipeline via netlify functionslocal support cdn abilities such redirects custom headerseleventail product &#39;s something maintain myself think might useful too then great go ! suggestions contributions pull requests are also welcomeoneclick deployok 2 clicks can try yourself this speedy automated deploy clicking button below will:clone git repo into your github account ( will asked required permissions add ) new created netlify linked shiny repo ci/cd &#39;ll able deploy changes simply by pushing repothat&#39;s reallytry doubledare "
  },{
    "url" : "https://css-tricks.com/emcee-tips-for-a-conference-or-meetup/",
    
    "title" : "MC tips for a conference or a meetup",
    "text" : "mc tips conference meetup since &#39;ve emceed few conferences now been asked quite times have any tips ! here selection things that think work wrapped post csstricks"
  },{
    "url" : "https://dev.to/philhawksworth/netlify-pro-tip-using-split-testing-to-power-private-beta-releases-a7l",
    
    "title" : "Netlify pro tip - Using Split Testing to power private beta releases",
    "text" : "netlify pro tip using split testing power private beta releases explanation short video demo how create your own opt ui features site like branch deploys testing could use this with any type like regardless what tools static generator used example created hugo anything also regularly sites made gatsby eleventy"
  },{
    "url" : "https://www.sitepen.com/blog/episode-42-rethinking-deployment/",
    
    "title" : "Rethinking Deployment - on TalkScript",
    "text" : "rethinking deployment talkscript after speaking about jamstack serverless web rather wonderful nebraska js omaha got chance hangout chat with bryan podcast spoke what static really means old new approaches how sites can raise confidence your projects few other things from talk"
  },{
    "url" : "https://dev.to/philhawksworth/power-up-gatsby-sites-with-a-b-testing-on-netlify-fp4",
    
    "title" : "Power up Gatsby sites with A/B testing on Netlify",
    "text" : "power gatsby sites with /b testing netlify host your site netlify can create multivariant tests without need clientside ui manipulation other javascript intervention this post demo video explain how"
  },{
    "url" : "https://dev.to/philhawksworth/reflecting-on-london-s-first-jamstack-conference-13e9",
    
    "title" : "Reflecting on London’s first JAMstack conference",
    "text" : "reflecting london’s first jamstack conference summary what took place london including thoughts list speakers activities"
  },{
    "url" : "https://css-tricks.com/tips-for-rolling-your-own-lazy-loading/",
    
    "title" : "Tips for rolling your own lazy loading",
    "text" : "tips rolling your own lazy loading exploration making lazyloading solution images using little javascript some helper utilities from eleventy static site generator published csstricks"
  },{
    "url" : "/blog/find-that-at/",
    "title" : "findthat.at - A URL shortener powered by Netlify",
    "text" : "findthat url shortener powered by netlify &#39;ve recently started roll own short urls using netlify&#39;s optimised edge redirects via api incredibly efficient gives urls which manage domain instead farming that out thirdparty provider who might go away remarkably easy set here&#39;s how redirect apinetlify allows run directly their adn adding _redirects file your project can read more details documentation contains lines config look little like this:/shortpath http://someplacewebby maintaining this file pushing site create many like mine drives purchased especially job public available see github matches are found falls through last possible match sends people here page👋 hi there!sorry couldn&#39;t find link maybe just wanted how thing worksmore convenience rather excellent kent c dodds noticed potential technique took stage further some useful utilities keep orgnaised shortcodes automatically streamline process making new with handy scripthis video walkthrough he made netlifyshortener very good recommend giving watch"
  },{
    "url" : "/blog/keeping-sass-simple-and-speedy-on-eleventy/",
    "title" : "Keeping Sass simple and speedy on Eleventy",
    "text" : "keeping sass simple speedy eleventy &#39;ve experimented with quite few different static site generators over years currently &#39;m really enjoying using this site feel like got most setup had some nice tips compiling your css javascript into which very elegant sites many pages these might have slight overhead generation speed variation speed things eleventy written logical route customisation extension its main config file holds various configuration settings variables can also contain functions executed when needed utilitiesthis feature used minify inline each page read about more detail essence approach does this:imports cleancss library exposes filter called cssmin use anywhere within our templates// excerpt eleventyjs fileconst cleancss = require(&quot;cleancss&quot;);moduleexports function(eleventyconfig) { eleventyconfigaddfilter(&quot;cssmin&quot; function(code) return new cleancss({})minify(code)styles; });};then html page pass file receive minified blob return gets inlined page&amp;lt;! from base page template &gt;&amp;lt;! capture content nunjucks variable &gt;{% set %}{% include &quot;samplecss&quot; endset %}&amp;lt;! feed through &gt;&amp;lt;style&gt;{{ | safe }}&amp;lt;/style&gt;this works beautifully build dependencies are few complexity low logic easy follow even future phil (that poor sucker) he returns months nowmore work don&#39;t optimise too early where possible &#39;ll stick approach bits preprocessing number pages project increases greater ( processing every page)onetime preprocessing moved add small step front build following:compile files single watching changes// gulpfilejsconst gulp require(&quot;gulp&quot;);const require(&quot;gulpsass&quot;);// task generate sassgulptask(&#39;css&#39; function() gulpsrc(&#39;/src/scss/mainscss&#39;) pipe(sass({ outputstyle: &#39;compressed&#39; }) (&#39;error&#39; sasslogerror)) pipe(gulpdest(&#39;/src/site/_includes/css&#39;));});let precompiled css possible removes need http request would block render pays keep amount light css get little performance bump now just file:&amp;lt;! &gt;&amp;lt;style&gt;{% %}&amp;lt;/style&gt;that&#39;s now only once time build rather than per similar process sitewatch learnone last grease development wheels further watch changes recompile found already provides hot reloading browsersync assistance rebuilds refreshes detects changes compilation happens upstream thatby adding running that concurrently serve best both worlds trigger rebuild output asset ( then refresh too) run command via yarn script helper doing npm directly work nicely too:gulp &amp;amp; serve look closer code see: source files generated css includes them generates them watches changes"
  },{
    "url" : "/blog/adding-search-to-a-jamstack-site/",
    "title" : "Adding search to a JAMstack site",
    "text" : "adding search jamstack site often cited limitation static sites searching feels dynamic surely impossible site right thankfully here nice technique use with most any generator little javascript progressive enhancement add functionality your sitethere are number services available can bring fully featured rich had needed more sophisticated searching things like fuzzy matching related content associations deep analytics could have used service algolia who experts this sort thingsome requirements needs relatively simple rather than using external wanted roll own simple which would help people find blog posts set myself following requirements:using best experience fine should possible without searching feel very fast items by looking post titles content additional overhead libraries third party services keep manageable impact perceived page speed whatsoever technique summary approach chose take :provide google form fallback pagehijack link that javascriptwhen user clicks search silently load json index contentdisplay ui each keypress ui our string matchesdisplay links matches foundlet&#39;s look some closelysetting baseline first step good baseline from progressively enhance javascript creating jsfree much difficult setting working before ever enters picture &#39;d recommend matter what building added primary navigation site see top page regular old &#39;ll hijack later now goes page page lean engine provide ability leading engines allow this here&#39;s &#39;m google html parameters will send request google scoped site looks this:&amp;lt;form action=&quot;https://wwwgooglecouk/search&quot; method=&quot;get&quot; class=&quot;search&quot;&gt; &amp;lt;input type=&quot;hidden&quot; name=&quot;q&quot; id=&quot;q&quot; value=&quot;site:http://hawksworxcom&quot;&gt; &amp;lt;label =&quot;searchstr&quot;&gt;search &amp;lt;small&gt;&amp;lt;/label&gt; type=&quot;text&quot; id=&quot;searchstr&quot;&gt;&amp;lt;/p&gt; &amp;lt;button type=&quot;submit&quot; class=&quot;submit&quot;&gt;search google&amp;lt;/button&gt;&amp;lt;/form&gt;that gives us perform ( directly scoping query site:http://hawksworxcom/) results displayed point back correct pages site baselinehijacking link stay just same need inline unobtrusive unavailable link&amp;lt; href=&quot;/search&quot; id=&quot;searchlink&quot;&gt;search&amp;lt;/&gt;now javascript event handler trigger feature somebody search also suppress standard behavior since &#39;re navigating away current page// attach click linkvar btn = documentqueryselector(&#39;#searchlink&#39;);btnaddeventlistener(&#39;click&#39; function(event) { // don&#39;t navigate put eventpreventdefault(); make magic happen instead} false);loading object inspectuntil indicated they intend clicking link dont index helps weight down once clicked &#39;s time go get data while show ui contemplates fetch data javascript// dataconst searchindex;fetch(&#39;/searchjson&#39;)then(function(response) return responsejson();})then(function(response) searchindex responsesearch;});this now matching &#39;ll whatever into fetching against basic adequate here// item jsonvar [];(var ) var found searchindex[item]textindexof(searchstring); (found != 1 resultspush(searchindex[item]) }}// display arraygenerating index far good when required rudimentary matching where does come from that&#39;s really us generate creates output applying templates structured datasince built generator already interpreting its outputting shape need all create suitable template html objectgenerating done build time ready serve resource performance resilience bonuscurrently called eleventy eleventy making searchjson straight forwardpermalink: searchjson{&quot;search&quot; : [{% collectionsposts %} &quot;url&quot; &quot;{{ itemurl }}&quot; &quot;title&quot; itemdatatitle &quot;text&quot; (itemdatatitle + &quot; itemtemplatecontent) | squash }}&quot; }{% looplast %}{% else %}{% endif %}{% endfor %}]}by iterating over collection posts construct suit convenience chose: url: page title: title inn results text index: contains every unique word contained post&#39;s text efficient condensed property little passing filter created sqaush massage more following:makes lowercaseremoves duplicated wordsremoves words less meaningfully searching many generators give filters utilities way how work everything learn ruby ( did implemented same thing confidence earlier version jekyll) building blocks needwhen these together assemble behaviors ui capability try works nicelywhen inspect manipulate makes expose like gain craft wide variety experiences website delivering functionalities prove might originally expectedwith imagination other dynamic features sites satisfying"
  },{
    "url" : "https://www.netlify.com/blog/2018/10/16/contentful-and-github-help-make-jamstack_conf-a-reality/",
    
    "title" : "Contentful and GitHub help make JAMstack_Conf a reality",
    "text" : "contentful github help make jamstack_conf reality bring much platinum sponsors here&#39;s why"
  },{
    "url" : "https://www.netlify.com/blog/2018/10/08/get-more-control-over-netlify-continuous-deployment-with-deploy-skipping/",
    
    "title" : "Get more control over Netlify continuous deployment with deploy skipping",
    "text" : "get more control over netlify continuous deployment with deploy skipping learn how suppress automated build process deployment"
  },{
    "url" : "https://www.netlify.com/blog/2018/09/27/the-10-talks-and-many-highlights-of-vue-london/",
    
    "title" : "The 10 talks and many highlights of Vue London",
    "text" : " 10 talks many highlights vue london some which featured 6 lightning about popular javascript framework vuejs"
  },{
    "url" : "https://medium.com/netlify/off-with-their-heads-the-rise-of-the-modern-cms-e0089538aed6",
    
    "title" : "Off with their heads ! The rise of the modern CMS",
    "text" : " with their heads ! rise modern cms paid glamorous agency design your new website spent thousands hours gazillion dollars laboring over every aspect get just right after rounds meetings reviews arguments sweat tweaks nudges… finally have are happy with even board they want now"
  },{
    "url" : "/blog/comedy-in-the-crown-goes-pro/",
    "title" : "Comedy in the Crown goes pro",
    "text" : "comedy crown goes pro almost three years ago friend started free open mic night pub st albans quickly grew from experiment held once month into pretty solid weekly which are both rather proud fun exciting try something new with four professional comedians were delighted resultscurating lineup audienceover course operating crown lee have come know local audience very lucky some lovely regulars who support us most weeks addition that &#39;ve learned what types acts tend well albans our night&#39;s wonderful see enthusiasm many performers coming tried give opportunities comedians different levels experience wide variety styles more than 400 appeared several become audience favorites performed multiple times there friendly atmosphere worked hard cultivate cherishlee amassed quite bit knowledge freakishly good memory their various this helped craft first ticketed felt would land had know able book:masud milasben popefaye teacey hal cruttendensecret squirreleach one them wonderful striking tones resonated intimate ( think) snazzy room limits just over 50 tickets really got connect might normally much larger roomswhile could announce masud ben faye advance little different preparing extensive tour moment (go him possibly can he&#39;s brilliant) needed secretive about his appearance billing &amp;quot; mystery tv star&amp;quot; all keeping secret going until half way through gave payoff revealed &amp;quot;mystery delight audiencejammy dodgerlee share responsibility mcing nights &#39;ll take turns each get enjoy introducing being face night extremely fortunate occasion fell host honour utter treat only because thrill such accomplished acts also warmth been better (despite teasing)more please went without hitch response wonderful again working out how make kind fit night looking next headliner will work audience who &#39;d like think eager watch space"
  },{
    "url" : "/blog/webserverless/",
    "title" : "Webserverless",
    "text" : "webserverless today saw question twitter which have seen few times before posed by rather excellent lovely drew mclellanwhat think best use cases are static site generator mclellanthere were some interesting responses this cheeky playful response from irrepressible bruce lawson jumped out :making sites lawsonthanks bruce problem solvedbruce knack cutting chase made smile nudged one trigger phrases drew&#39;s follow then prodded further:ok when/why would make site mclellan site term strikes being widely misunderstood taken describe experiential characteristics site probably intended attributes architecture delivers &#39;s like describing blue french site fairness know that naming things computer science hard tooling processes around architectures evolved results longer need are well static number people replied offering scenarios brochure change very infrequently other words behave staticallythomas fuchs got closer what stock when he offered improved security performance portability all valuable points still find myself trying articulate little differentlyremoving web serverthere been attempts reset misnomer jamstack surfaced effort more conveniently can served assets needs enriched further via progressive enhancement clientside access services talked chris dave about recently their shop talk show podcast this:web servers difficult secure scale optimize operate maintain our own ensure they resilient single points failure service requests quickly under load (including database queries dynamic view population behind scenes) stay updated patched healthywhen introduce important content management systems (cms) mix technical stack get even complex subject risk attack poor performanceback 2012 working agency exploring perch cms ( selfhosted lamp cms breathing much needed fresh air into state systems) asked drew:can generate files serve dumb server [&#39;m] win arguments with vastly reduced hosting infrastructure– younger phil 2012drew&#39;s suggestion add caching layer something varnish that&#39;s reasonable popular suggestion quite looking wanted take moving parts visitors could avoid doing scale challenging strategies resilient often involve taking steps emulate serving assets anyway technologies delivery networks (cdn) server generates dynamically ( just time) making those resources them distribution repeated usecaching invalidation trivialdistributed cdn trivialwebserver trivial want focus creating deliver beautiful experiences don&#39;t design manage infrastructure addresses commoditized problems build way lets cut complexity risk which default perfectly suited deploying across distributed &#39;ll choose thatstatic generators tools capable predictably reliably cdn whether changes infrequently blogs one large publishing smashing magazine complete comments subscriptions ecommercehaving without webserver offers huge advantages approach each work asking &amp;quot;can static&amp;quot; asking introducing overhead server&amp;quot; sometimes answer usually yeswhere possible &#39;m going webserverless"
  },{
    "url" : "/blog/smashing-magazine-moves-to-a-jam-stack-architecture/",
    "title" : "Smashing Magazine moves to a JAMstack architecture",
    "text" : "smashing magazine moves jamstack architecture magazine much beloved prolific resource web designers developers relaunched with new design membership model same time migrated from variety platforms which ran its publishing comments ecommerce user management more over technology platform sets benchmark what can achieved once thought basic static architecture now live smashing&#39;s several million monthly visitors netlify (also home)&#39;ll watching progress impact this carefully already see more than 10x improvement page performance that&#39;s huge!aside speed improvements reduced server complexity ( all headaches that go that) move should also bring about some changes way authoring publishing workflows happen team moved wordpress adopt significantly contribute ) netlify cms enables very powerful productive editorial workflow saw demonstration back later 2016 blew mind had been calling conference talks legacy vs modern untapped power jam stack architectures coming life through hard work netlify generous dedicated opensource contributors&#39;m excited hear how received by team communitygo explore consider supporting their reduce site ads joining program gives access even content"
  },{
    "url" : "/blog/joining-netlify/",
    "title" : "Joining Netlify",
    "text" : "joining netlify &#39;m very happy announce that developer relations team netlify from where are can&#39;t see hopping foot with excitement feel free imagine that because &#39;s happening should probably explain whywho are netlifynetlify technology company based san francisco increasingly global reach they er provide next generation web hosting infrastructure automation its core offers affordable (very often free) jamstack sites drastically simplifies process deploying site quietly does all things don&#39;t want spend too much thought effort yourself like:tlsedgenode cdn configurationcache managementload balancingversioned reversible atomic deploymentshold there philip much back second!tl;dr:simply put makes easier develop host your website responsible way way secure performant scalable well fun actually&#39;ve been enthusiastic customer beginning growth netlify&#39;s features closely mirrored ( gone beyond) what have calling when describe think &amp;quot; better way&amp;quot; approach modern development chance part this yes please only alsobeyond providing intuitive speedy just get site hosted offer impressive set tools give unprecedented power elbow everyday developers developers who longer need 20 year veterans dark arts every aspect resilient distributed hostingmuch magic &amp;quot;just happens&amp;quot; further powerful available those take control themgrowing appreciation&#39;m alone being fan may heard some smashing magazine enthusing about their move wordpress architecture vitaly friedman sara soueidan amongst vocal benefits could always wanted terms flexibility speed performance architecture front end friedmaneverything works like magic soueidan product team founders are let put this politely given they new bosses freaksthey marry impeccable technical taste deep ability business smarts level efficiency output boggles mind &#39;ve known them number years regularly dumbfounded how steadily offering matured progressed through seed series rounds funding growing getting stronger stronger ranks thrilling prospectwhat clear initial focus will :add snooty british accent teambring down average iq something more reasonablebeyond that &#39;ll working relations means able continue exploration into possibilities building jamstack sharing insights examples case studies use emerging features both beyond platform also time development conferences community events love this can share passion architectures approaches show ways make which already about learn challenges facing web ingenuity employ solve problems encounterquestions netlify why excited future talk potential might find twitter direct messages @philhawksworth open please reach outalternatively come say hello spot conference keen chatok let&#39;s this"
  },{
    "url" : "/blog/ttfn-rga/",
    "title" : "TTFN R/GA",
    "text" : "ttfn r/ga time come close precious chapter career six years ago joined r/ga by crikey been quite ride &#39;ll soon handing &amp;quot;r/ga badge gun&amp;quot; move next adventure &#39;m incredibly excited about more that later now want take breath reflect rewarding yearsagency life easy nor everyone working london represents think one best agency experiences around yes intense times there have some sleepless nights skills colleagues level ambition quality work made unforgettable time taking things grantedunless are careful staying same company few allow start two granted clients instance &#39;ve had good fortune work global campaigns likes google nike beats dre dyson many more projects enjoyed very high profile exposure truly kinds opportunities could only dreamt before joining r/gaanother example would eyewatering talent rubbing shoulders with together with world class practitioners something never forget blunt spoilt knowing fact doing will always beautiful thoughtful likely win awards become another jewel even snazziest portfolios well that&#39;s pretty nice position which find yourselfgritthis say every project breeze hard harder than recall anywhere else occasion under extraordinarily challenging conditions this where sheer character colleagues remarkable group people who rally achieve impressive outcomes matter what huge respect tight bonds form from such experiences safe little sad leaving defining experience professional personal life walking away opportunity ever interesting potentially famous taken lightly thought longer being surrounded these wonderful friends each day leaves lump throatwhat don&#39;t wet eyes shut !now nextwhy then trade compelling must around corner tempt awaywell yes think looking forward able share news soon just sending heartfelt thanks eveyone r/ga most certainly did disappoint!"
  },{
    "url" : "/blog/keeping-a-jamstack-site-feeling-fresh-with-recent-tweets/",
    "title" : "Keeping a Jamstack Site Feeling Fresh With Recent Tweets",
    "text" : "keeping jamstack site feeling fresh with recent tweets having somewhere your show few common requirement twitter provides some easy ways embed feeds onto via javascript &#39;m keen remove external javascript dependencies from site helps render more quickly lets control exactly how looks static site would pain need compile deploy after every tweet luckily by stitching together simple tools this can all happen automagically whenever new tweet posted made jekyll perhaps most popular generator already have bits gulp part build automation whole thing hosted netlify very favorite hosting servicepulling into codebase bring add task which requests twitter&#39;s api stashes them yaml data file jekyll makes files available its templates use content however need far simple now trigger deployment tweetnetlify run their environment same way that runs local development environment output then gets deployed distributed cdntriggering buildthere are lots netlify build what here webhook netlify&#39;s settings create webhook url will recieves post requestnow monitor feed trying keep away host any server service myself just turn that automation um serviceifttt channels feeds also ability make webhooks required configure ifttt applet tie these things togetherpulling togetherwith pieces place start working nicely each find site&#39;s html clientside javascript quick summary:ifttt monitors activity feednew result call webhookpost specified invoke netlify pulls api includes home page victory dance"
  },{
    "url" : "/blog/isomorphic-rendering-on-the-jam-stack/",
    "title" : "Isomorphic Rendering on the JAMstack",
    "text" : "isomorphic rendering jamstack have been experimenting with something that seemed obvious while web development model which gives prerendered readyconsume straightintoeyeballs page every url site one which once loaded then behaves like clientside single app fact many frameworks set about this all manner complex addons machinery gave cause think missing big built simple proof concept static site generator see could work &#39;m pretty pleased let talk through approach show resultfirst thing&#39;s first let&#39;s look &#39;s site big application that&#39;s precisely type thing seeing regularly overengineered fits purpose take quick peek come back read how put togetherhttps://wwwcomedyinthecrowncomstill ok list out principles wanted demonstrate site: consumable content without need javascript display things browser valid bookmarkable entry point urlclientside enhancement reduced data over wire rapid ( perhaps fancy) transitionsimple serverside architecture served from any servercontent management cms outside environmentjam stack its heart project would use build deployable should satisfy 4 above right don&#39;t add anything muddys waters&#39;ll gulp run generate our assets nodejs server some apis get data &#39;ve calling kind short stack development nicely what mathias biilmann netlify calls jam stack :javascriptapismarkupabstracting management first step way abstract deliver managed via cms chose contentful headless service takes care user interface publishing flows roles define expose json api modeled two main parts comedyinthecrowncom easily managed information gig nights acts who perform these form basis dynamic siteconsuming datanext consume 2 places:during versions page browser clientside render subsequent loads sake portability efficiency developing away network (like make developed mostly daily train ride) locally cache within local instance apicomedyinthecrowncom/dates renders comedyinthecrowncom/api/nightsjsoncomedyinthecrowncom/acts comedyinthecrowncom/api/actsjson this few advantages: loosens coupling between hosted cms reason were go away still function abstracted structured form move elsewhere had speeds build process doesn&#39;t latest time by stashing locally can avoid going while doing development serve own apisince &#39;ve grabbed data make available domain templates when client reduces dependencies serving since &#39;ll everything files cdn rapidtemplating generating site rendered also support rendering templating language used both server there several options nunjucks nice features syntax likewith place control activities:download stash version apirender html pages dataprecompile same javascript usual squashing optimising baking create directory assetsbake api filesnow fully populated pages more from pages adding event listeners internal links progressive allows us enable clientsite renderinghosting deployments keep freshour feel fresh code changes build push output somewhere sounds lot though will only really stay friction free possibleenter serves host server deploy result hosting infrastructure better than that triggered whenever changes git repositorythis developers frictionless done!now authors want published trigger too thanks webhooks support contentful fires webhook causes run pulled gets nice did reasonably keeps guesswork people visit environment delivery performance great are prerendered cached ready displayed additional working into user&#39;s eyes damn quickly after loaded ( available) loads new behaviours links from onwards link clicked longer requests page instead makes request needs api minified gzipped delivered cdn templates uses fraction bandwidth effort full reload goes fastby taking browser&#39;s history state api forward button expected feels slickthis behaviour become popular applications (spas) distinction here work default enhancementtaking furtherthis already good assets further removing sources encountered them before service workers help that prerequisite https trivial netlify (seriously took 10 seconds) check (warts all) github"
  },{
    "url" : "/blog/progressive-enhancement-design-smackdown/",
    "title" : "Progressive Enhancement Design Smackdown",
    "text" : "progressive enhancement design smackdown seven years ago picked fight during first few months working agency full pith vinegar entering place where building open web traditionally valued much felt should began making case being disruptivefeathers were ruffled debates had with arrogance someone who had enjoyed cosily aligned opinions comfortable echo chamber set about educating new colleagues matters that were course &quot;common sense right&quot; since then have regularly butted heads steve came trusted colleague also good friend remarkably talented designer illustrator whom often disagree web &#39;ve continued evangelise importance things &quot; right way&quot; while he gritted his teeth lack balance finally after debating offices pubs twitter countless conference tweets message echoed by fellow developers looked from distance steve quite rightly called out @philhawksworth what ’m saying phil think need some sort public over this get all out go :) – waller are going talk effort free conversation its 140 character shackles bring balance can rather echoing chamber development conferences agreed join enhance will whether modern practices damage creativity &#39;ll discuss both important probably touch been smug insufferable arse last years @bruised_blood buy tickets jake archibald well jake tickets this conf held royal society arts london march 4th 2016 can&#39;t wait!"
  },{
    "url" : "/blog/better-than-perfect/",
    "title" : "Better Than Perfect",
    "text" : "better than perfect every now again have remind self old adage about being enemy good can spend lot time something without ever getting finish line when forget this &#39;m unusual &#39;s common trait beyond this important had brought into sharp focus few times lately ways found rather inspiring first web which conference cardiff earlier year annoyingly talented seb lee delisle made throwaway comment his &#39; that smart&#39; how skill just he focussed things finished that&#39;s hard part ideas out your head world liked messagethis resonated with look hint shame number side projects experiments started completed one reason another usually because couldn&#39;t make &#39;perfect&#39; even perhaps feel &#39;good enough&#39;reflecting particular thinking latest experiment almost see light spurred revisit effort isn&#39;t everythingbeing determined complete project fine alone will protect from sinking countless hours really knowing where like that turn version expression good heard sister: done perfect – big sisterthis been most liberating revisited bits advice anyone given frees sometimes crippling anxiety prevents starting something embodied by open source community mantra &#39;release early release often&#39; underpins idea mvp agile development find remember message allows get doneshrinking judgement second example another conference manchester front end north lovely new attended many students recent graduatesone sessions there rozemary king talked value play creative loved talk some wonderful points gradually our tendancy discover trained us grow she exercising creative muscle worrying judgement others good creativity hipster tax third came same manchester there several talks best way approach development moments people described hot tool absolutely must using else &#39;re doing wrong refer &amp;quot; tax&amp;quot; price pay want always technologoy technique careful perpetual state learning expense thing accomplish goalsshortly after describing tax went talk gulp automated deployment particular railed use ftp deployment citing developers &#39;shooting themselves face&#39; ftpduring questions day young woman asked fantatstic question revise argument somewhat asked: &quot;everyone talking grunt gulp worried shouldn&#39;t personal site wrong go learn those&quot; north this middle much conversation tools techniques more little bit brave incredibly valuable answer gave should worry falling what everyone shouting about working fine her project then need productivity curtailed replace are bound plenty other urgent short : there&#39;s solving problem don&#39;t have sure projects deployments aren&#39;t going cut understanding alternative valuable later personally moved away them all regardless scale asking question reminded rozemary&#39;s danger stifling unfairly critical also dangers optimising too early software projects all perfectsatisfaction reaching lineall these examples &#39;finish&#39; toying weeks tidied got functional ( perfect) released reward positive response enough drive refine further occasional pull request helped improve still might perfect done"
  },{
    "url" : "/blog/the-shapes-of-web-views/",
    "title" : "The Shapes of Web Views",
    "text" : " shapes web views few nice folks around have been sharing visualisations most popular viewport sizes appearing analytics their sites thought these were beautiful useful wanted make easier people create own highlight need responsive design lara hogan etsy published first which caught eye are doing great work when comes learning about site performance optimisations this just another example that shortly after image surfaced twitter sean stopnik shaun bent both created shared visulisations from bestbuy bbc sport lovely stuff thanks sharing fellas! decided print images display them wall r/ga london office they serve reminder all us developers designers alike that squishy design build manner unknowns viewports see remindermake your with viewportify quickly suggested there must already tool generate rather than crafting photoshop surprise could find nothing would cobbled something together enter viewportify simple little will turn blob data used view site into can share save whatever &#39;s clunky seems work graph page see its glory over here &#39;d love gallery graphs grow contribute own"
  },{
    "url" : "/blog/adding-a-static-comments-system-to-my-jekyll-build/",
    "title" : "Adding a Static Comments System to My Jekyll Build",
    "text" : "adding static comments system jekyll build &#39;m big fan simplicity when building web sites that&#39;s just one reasons like using jekyll site generator out this site sometimes though would nice gather content from visitors via form hosting set assets doesn&#39;t cater thatthat&#39;s why decided create simple service which provide that capability any add site can use yours toointroducing poole after finding alone having itch teamed with friend alfredo aguirre about scratching by easy reuse all kinds projects poole simply provides place post your http post then api get back again get handle some privacy security isn&#39;t put most sensitive data &#39;s perfect things blog since they are intended publichow works wanted getting setup integrating into workflow super simple flexible possible currently there prerequisite github account authenticate manage forms rather than ask yet another may twitter oauth later toohere overview process: visit pooleappcom sign github new form generates key secret form html posts end point give includes key whatever fields their data will available json yaml format later content retrieve obscure url generated secretthat&#39;s offers security obscurity retrievable &quot;unguessable&quot; containing secret does require authentication access readonly api once bank details trade secrets nuclear launch codes please!managing data although without endpoint need credentials order delete formsnotifications useful notified posted forms configured send email notifications posted might daily digests other settings soon what spam indeed! offering free can&#39;t spring akismet spam filtering however enable yourself providing own personal key free very quick allow protect spammersusing jekyll gulp automate tasks added task pulls been poole handy treat structured have data rest parses adds appropriate posts part pages being loaded javascript search engines easily parse also means automatically retain store made handy poole run notification comment command deploy pushes pages// poolegulptask(&amp;quot;comments&amp;quot; function() { var options = { hostname: &#39;pooleappcom&#39; port: 80 path: &#39;/data/{apisecret}json&#39; method: &#39;get&#39; }; httpget(options function(res) body &#39;&#39;; res(&#39;data&#39; function(chunk) += chunk; }); res(&#39;end&#39; jsonparse(body); // gravatar image links available (var 0; &amp;lt; commentssessionslength; ++) commentssessions[]avatar gravatarurl(commentssessions[]email {s: &#39;50&#39; r: &#39;pg&#39; d: &#39;404&#39;}); } convert save use ymltext yamlstringify(comments); fswritefile(&#39;/src/_data/commentsyml&#39; ymltext function(err) (err) consolelog(err); } else consolelog(&amp;quot;comments saved&amp;quot;); } }); })(&#39;error&#39; function(e) consolelog(&amp;quot;got error: &amp;quot; e); });}); template pages &#39;ve above normal logic page originated from each page hidden field keeps track where comment originates inserted later lets specify domain redirect successful post way user never feels routed away third party service leave comment name website (optional) (&#39;ll ) try out try now &#39;ve liberate walk hopefully useful tool cases keen hear thoughts usefulness otherwise tool receive feature requests below our roadmap board trello"
  },{
    "url" : "/blog/too-funky-didnt-read/",
    "title" : "Too Funky Didnt Read",
    "text" : "too funky didnt read trend &#39;parallax&#39; &#39;scrolljacking&#39; web sites long had grumbling about their large page weight slow rendering times general accessibility black spots some are better than others that got thinking they ever good job today saw article from creative bloq heralding recent example these kind &quot; quirky masterpiece&quot; start by commenting: &quot;parallax scrolling may way becoming design cliche&quot; er yep somewhat!  actually looks technical approaches shout digital took order keep weight down just 77mb (big page low typical single parallax site) rest quote hits home though: &quot; agencies putting imaginative aesthetically pleasing uses there&#39;s surely life old dog yet&quot; this reminds one reasons wanted join big agency like r/ga first place add voice those fighting responsible executions which often have audiences sometimes ( least propagate) development trends need mindful type build best solution most responsible see were making efforts bring down sound broken record phil &#39;m going embark usual rants bloated pages require loading screens gobble your mobile data allowance because &#39;ve done many before went look site referring noticed something:  didn&#39;t read really even notice any content might this squinting through judgmental eyes purist don&#39;t think reality style rarely choice conveying content perhaps when people encounter all kinds whizzy interaction baubles play with ahead reading content site this apparently cadillac know said article otherwise &#39;m afraid detail passed by  question out there: did notice what &#39;ve seen recently said &#39;m curious hear regardless implementation performance how examples getting message across any observations reply tweet twitter"
  },{
    "url" : "/blog/using-a-wiimote-for-presentations/",
    "title" : "Using a Wiimote for Presentations",
    "text" : "using wiimote presentations over last couple years &#39;ve given number presentations matter what subject talk there one question always seem get asked afterwards: that controller were control your slides answer yes this quick post explain why howwhy use wiimote there are lots products out there started three main reasons: bluetooth ir must bluetooth provided apple ir remote which does fine need ensure line sight laptop means think about every time change slides even seen presenters pointing their clickers giant projector screen behind them attempt advance slide isn&#39;t tv! agony custom commands keynote useful keyboard shortcuts help during presentation guaranteed forget those commands when stage mapping button remote can save some nervous fumbling money owned already wasn&#39;t sure how often &#39;d startedwhat use  bit software called osculator pair laptop map whatever buttons want correct costs $29 free trial experiment with others available free worked best key mappings configuration future &#39;re interested try by downloading config just load open file osculator ready play mapped commands  have few active possible &#39;m clumsy enough without risk rebooting tweeting browser history audience via misplaced thumb these perhaps : button next slide button b previous slide dpad play/pause movie home reset timer  considered x key little gem shortcut switches presenter display screen very handy tend only plugging alreadywhat wrist strap that&#39;s right finally took plunge removed strap that&#39;s because live edge confident grip onto throughout talk accidentally throwing into fourth row friend jake archibald prefers strapping before giving talk he&#39;s big girl&#39;s blouse tight strap essential jake&#39;s &quot;propeller hands&quot; styleother thoughts tips speaking some more experienced speakers posted speaking ( attending) conferences recently posts been own preferred clicker take look : brad frost speaking mark boulton tips"
  },{
    "url" : "/blog/on-hiring-developers/",
    "title" : "On Hiring Developers",
    "text" : " hiring developers recently made comment twitter about how think can make easier employers recruit them sparked little discussion which been hard summarise 140 characters here&#39;s short blog post try clarify pointwhat said  by activity looking senior front end engineer r/ga these thoughts are personal opinions don&#39;t reflect policy employer something scary legal disclaimer etc dear jobbing web developers urge have site your own portfolio page links github &amp;amp; projects makes hire  @philhawksworth 12th nov 2013what point &#39;m trying find talented engaged experienced join team one qualities look passion demonstration that &#39;ve engaged with  this doesn&#39;t form public available sites usually people who work industry also participate see code github opinions twitter photos flickr whatever happens google+ (insert &quot;stays google+&quot; joke here) this does mean shareable urls footprint any way formal requirement landing job r/ga team happen involved putting together  help figure out should talk resumé alone always thatwhat debate after posting tweet norm whose opinion respect quickly replied with: @philhawksworth really never needed those when working yahoo built very sizeable worldclass devs @cackhanded 13th 2013 some ensued norm suggested requiring kind online profile significantly limits talent pool might from he observed &quot;selecting only had would exclude best ’ve ever worked with&quot;  quite agree say this prerequisite job problem though simply this resumés suck they just suck especially they &#39;sanitised&#39; intermediary recruiting consultancy tried conform their standard format (which often happens)  industry resumés lot snazzy technology buzzwords wellcrafted summary experience shows evidence engagement passion skill tough create rare see  included having active positive thing tweet put &#39;s convenient place see development activity being familiar git advantageous suggesting candidates must show contribute open source projects more than that norm responded specifically that interesting article: @philhawksworth @rossbruniges @larister needing profile: http://ashedrydencom/blog/ethicsunpaidlaborosscommunity @cackhanded 2013  reply: consider contributing project perhaps restate advice without pesky character constraint candidates dear frontend seeking freelance permanent employment good demands stand from all other candidates luckily what platform may suggest like lots resumés by: keeping enough easily read batch 5 10 others describing role want find excites  share things relevant web include previous ( publicly available) own blog feed linkedin profile side toy experiment single page name html version resumé love web great   can&#39;t &#39;ll get information determine something web &#39;ll making harder awesome person who&#39;s let spending time microsoft word love hugs luck phil"
  },{
    "url" : "/blog/london-content-strategy-meetup/",
    "title" : "London Content Strategy Meetup",
    "text" : "london content strategy meetup last night faced bit fear mine by giving 5 minute lightning talk popular meetup hosted book club london&#39;s startuprich shoreditch less about speaking public which enjoy (although still gives certain amount heebiejeebies) more format five minutes with 20 slides automatically advance every 15 seconds bumclenchingly terrifying strips all security mechanisms forces particular focus rhythm interesting challenge loved event well organised local agency together had wonderfully warm generous atmosphere line 8 speakers structured give good variety topics nerd room most happy reception got feedback from longer versions can smell your cms often brought question how taking this topic ears those who benefit its message first step towards that argues consideration performance impact complex have websites many developers appreciate message already challenge convince decision makers outside dev community that expensive platforms are always suitable just dint their pricetag brand popularity enterprise evening ended chance socialise 100 filled nook cranny club&#39;s downstairs barslides video deeper look some may interested version talk goes reallife casestudies battle scars there video fronteers conference amsterdam also extensive slide deck available should wish lightening talks were recorded hope share here soonphotos evening"
  },{
    "url" : "/blog/oakleys-moto-diet/",
    "title" : "Oakleys Moto Diet",
    "text" : "oakleys moto diet recently blogged some crticism about site which had 85mb home page time writing oakley&#39;s most dramatic example ever seen excessively enhanced heavyweight single page site since then team oakley have responded by putting dramatically improving its performance footprint great stuff! criticisms provoked conversation twitter many people echoed surprise such excessive weight others argued that this pushing boundaries web notably though josh austin member contacted say thanks bringing concerns his attention impressed &#39;s easy hear something &#39;ve worked hard indeed everyone took criticism with good grace oh well delighted when again let know number optimisations been implemented should take another lookcredit where credit due result efforts new version (which same aesthetic functionality far can tell) deployed drastically reduced weightcomparing footprints original site: 854mb weight 471 http requests now revised 136mb 285 that&#39;s saving more than 70mb! huge! &#39;m still really fan kind site 13mb very large fantastic optimisation consider version bravo revisiting making improvements"
  },{
    "url" : "/blog/data-viz-at-digital-dumbo/",
    "title" : "Data Viz at Digital Dumbo",
    "text" : "data viz digital dumbo this week shoreditch festival draws close few us from r/ga got chance attend evening talk with other london agencies startups about visualisation couldn&#39;t resist urge build little something take along event which bit mixer following one day conference hosted by dumbo took place campuslondon shoreditch local creative companies were invited create visualisation some aspect their company there interesting graphics exhibited moo carrot several others however make people could interact with temptation engineer very ambitious quick project would need pull together between jobs did our best keep idea simple result rendering instagram activity r/gaers offices around world anthony built simple web form circulated all company asking access photos also identified they are based then went gather content harvesting later had rich set serve frontend via api frontend html javascript canvas pedro illustrated geographical spread location photos each office plotting distance photo office showed differing habits characteristics different offices made fun slideshow people&#39;s images being able touch display explore brought closer data watch them playjust ad agency surprised comment that heard people &quot;how come writing code thought just agency&quot; &#39;s nice get dispel myth tell products platforms r/ga lot code sharing tiny glimpse lots fun"
  },{
    "url" : "/blog/pathing-the-gimmicky-cowpaths/",
    "title" : "Pathing the Gimmicky Cowpaths",
    "text" : "pathing gimmicky cowpaths &#39;ve ranted quite bit about clumsy excessive parallax scrolling effects web sites recently following adobe&#39;s announcement that they are making this kind effect simple via wysiwyg authoring tool &#39;m bracing another glut with effect some might beautiful many will what what&#39;s problem recognising desire visual providing tool help deliver well first all still wary wysywig tools just convinced capture subtlety nuance crafting experiences browser perform everywhere gracefully degrade future friendly video touting feature rufus deuchler creative cloud evangelist design mentions provides: &quot; sophisticated can apply without writing any code&quot; fear trendy been popping lot rarely done way shows care pageweight performance perceived performance easier knowing code considerations seems like storm brewing what parallax term getting used triggered by scrolling course that&#39;s correct use term get when objects move different speeds planes giving impression depth &#39;s spin explode woof scroll those often seem go hand excess early example clear apposed only delivered gratuitously consideration experience user ( includes their bandwidth costs) back 2008 paul annett blogged how clearleft had implemented beautiful example silverback site got attention time attention bloated self indulgent degraded thoughtfully let&#39;s hope using new autowebshizzle give same thought start churning out more these related: oakley&#39;s monster page baubles enhancement"
  },{
    "url" : "/blog/talking-at-jsday-verona/",
    "title" : "Talking at Jsday Verona",
    "text" : "talking jsday verona few days &#39;ll speaking verona &#39;m lucky enough have another chance present version excessive enhancement talk which first gave brighton way back november 2011 isn&#39;t out date well don&#39;t think message that trying convey this sadly still pertinent ever updating keep current with new examples case studies trends hoping encourage people about remains same here&#39;s synopsis: all love see exciting innovative &quot;interface shizzle&quot; driven by javascript ever increasing rendering capabilities modern browsers are getting these expense web will explore good bad fugly rich interfaces while examining how why should take care damage web main consideration users web last year average page weight grown 24% according http archive includes growth amount delivered interpreting browser itself that&#39;s end world there fashionable web site designs (often popular big brands who employ agencies) might suggest slope get steeper their practices tastes emulated become popular reflects burst everyone&#39;s bubble let&#39;s update done! after giving afterwards &#39;s nice lots caring same issues being mindful them during own development thanks such warm reception one question got times later day : kind thing too convince pushy clients managers important certainly can relate that going battle some more ambitious designers need restraint ( tandem striving engaging experience) wish had perfect answer this truth open hearing arguments others &#39;d echo something marco said his different topic: &quot;bring numbers theories&quot; lot studies performance percieved impact user engagement convesion rates often conversion recommend taking look steve souders&#39; post impacts results key figures from help: when mozilla shaved 22 seconds landing page firefox downloads increased 154% shopzilla saw rates increase 712% result optimization efforts making barack obama’s website 60% faster donation conversions 14% were many great talks enjoyed event deal worth keeping eye lanyrd covereage other talks"
  },{
    "url" : "/blog/oakleys-monster-page-of-baubles/",
    "title" : "Oakleys Monster Page of Baubles",
    "text" : "oakleys monster page baubles ridiculous trend giant bloated web pages crammed with every visual bauble gimmick imaginable seems set continue this time thanks site by oakley have been gathering examples kind using them what talk &quot;excessive enhancement&quot; some time when brad frost alerted example though thought had spoof nobody would consider good idea they really these types site which uses html5 css3 emerging development techniques create parallax effects animations scroll are frequently terrible citizens webvital statistics without primed cache over home broadband (advertised provider 16meg usually peaking around 11meg) experience: 854mb weight 471 http requests 2 minutes 45 seconds until loading screen replaced content 4 10 minute onload event astounding! can visit take look while still http://motooakleycom ( predict might last forever) see video below cost just 285mb (saving almost 60mb bandwidth allowing skip ahead site) now want things stop emerging same time &#39;d rather let beat example does anyone better (worse) out there share send way twitter @philhawksworthupdate oakley responded updated site particulars follow post: oakley&#39;s moto diet"
  },{
    "url" : "/blog/reflecting-on-txjs/",
    "title" : "Reflecting on Txjs",
    "text" : "reflecting txjs recently blogged that &#39;d speaking annual texas javascript conference austin after few days reflect have say only privilege speak txjs also pretty special event attend this first visit now its fourth year steadily grown size popularity over years alex sexton who runs event worked hard retain intimate friendly atmosphere gave version &quot; can smell your cms talk&quot; along with aspects borrowed from another talk mine called &quot;excessive enhancement&quot; slides are below video session due published sometime soon available vimeoimpressions day year single track event like removes nagging feeling choosing see one expensive another talks were just 25 minutes long which attendee liked felt got load great day head buzzing by end day quality felt very high there suggestion twitter less deep content than some people would like nodejs section offered bunch proper brainboxes which seemed satisfy most variety topics great lot thoughtprovoking inspiring content full line growing set coverage lanyrd &#39;ve briefly picked out personal highlights below (which easy)harper reedentertaining inspiring harper spoke about his time cto threadless obama america campaign stories philosophies around building teams productschris coyer anyone still fence using sass should chris speak style presentation infectious energy he makes points value ways use frances berriman know frances such places london &quot; pub&quot; had never seen her present before frances&#39; description award winning work going govuk both fascinating real examples truly valuable being done overhaul uk government web sites lessons working produce thoughtful experiences webjed schmidt jed rapidly through example api numerous serverside utilities node jed&#39;s fantastic humor staggeringly high pun count dense information yet funny enjoyed greatlycharlie robbins ceo nodejitsu charlie nice insights into business embraces supports open source advocate source myself good hear how nodejitsu protects proprietary code while sharing parts stack projects greater gooddrew wilson listening drew depressing uplifting because reminds much procrastinate fear failure uplifting sheer volume things message get pursue ambitions many other speakers outrageously prolific followed theme book (written 8 days!) why execute rapidlynight watchman last speak little nervous considering follow plus all stood between hundred their anticipated beer started quipped: spent day thankful didn&#39;t follow current excellent speaker continued day until nobody left lower bar meant thankfully audience generous welcome entertained accent slides sexton told later: &quot;&#39;s funny sound prince&quot; &#39;m adding resumeupdate been videos txjs2013 vimeo channel"
  },{
    "url" : "/blog/excess-cms-and-stink-at-txjs/",
    "title" : "Excess CMS and Stink at Txjs",
    "text" : "excess cms stink txjs &#39;m rather excited speaking texas javascript austin this year takes place monday 15th april austin&#39;s beautiful paramount theatre talk will take from smelly also touch aspects another mine called excessive enahnacementhere&#39;s synopsis: make web sites clients want them include all latest exciting fads &quot;interface shizzle&quot; render quickly have shelflife longer than that hummus bought other day able maintain site themselves they know about content management systems are going invest big money real belter they&#39;ll unleashing their &#39;creativity&#39; messing with your mojo explore good bad fugly rich interfaces look ways champion what matters &#39;ll examples damaging traces cmss leave behind frontend avoid smell wafting over user sacrificing allimportant craftsmanship good engineering year single track conference organised into topic sections falls rethinkjs section charlie robbins drew wilson which set like this: speakers talking thinking differently these ideas framed technical audience often more computer"
  },{
    "url" : "/blog/smelly-cms-at-html5devconf/",
    "title" : "Smelly CMS at HTML5DevConf",
    "text" : "smelly cms html5devconf april 1st &#39;ll speaking palace hotel san francisco giving version &amp;quot; can smell yor cms&amp;quot; talk which looks how content managment systems adversily effect performance experience frontendhere&#39;s synopsis: word getting out great web site experiences require careful development crafty execution front end squeezing every drop out your user&#39;s browser tough steve souders friends have mobilized army are all having bloody good go there common threat doing work frontend lurks backend clients love &#39;s management system more often than stinks &#39;ll look examples damaging traces cmss leave behind frontend might reduce them find ways fight what matters cms avoid wafting over user sacrificing craftsmanship engineering presenting 4pm monday 1st ( really!) twin peaks room come along say helloupdate: once again this session well received encouraging sign number people asked about recording talk sadly recorded event however video from fronteers also slides some q&amp; session info: hotel info info coverage lanyrd"
  },{
    "url" : "/blog/simplicity-and-performance/",
    "title" : "Simplicity and performance with static files",
    "text" : "simplicity performance with static files &#39;ve been beating drum recently lot pursuing technical architectures want allow optimizations where matter most avoid kind functional bloat can get through using some cms platforms delighted when colleague recently shared link kyle rush&#39;s post which demonstrates huge value this approach obama fundrising campaign site kyle&#39;s article well worth read he talks high level about principles approaches that were used ensure contributebarackobamacom site many techniques architecture decisions map very closely those have championing talked little fronteers amsterdam spoke complexity overhead from content management systems particular interest mentions great stuff like: generating site jekyll github version control abstracting payment gateway restful api calling client performing /b testing optimizely iterating rapidly much rings true read tangible financial benefits ensuring optimized frontend development compromised by (what call) stink couple quotes gave real &#39;amen brother!&#39; moments: jekyll managed comes (databases server configuration) instead focus things like optimizing ui providing better user experience there said simplicity can &#39;hell yeah!&#39;"
  },{
    "url" : "/blog/i-can-smell-your-cms-a-talk-at-fronteers/",
    "title" : "I can smell your CMS at Fronteers 2012",
    "text" : " can smell your cms fronteers 2012 this year lucky enough invited speak fronteers very well regarded web development conference amsterdam particular excited by since event had been high wishlist attend last few years spoke about negative impact that content management systems regularly have frontend effort how might try combat this format year adopted small positive change two days were mc&#39;d christian heilmann mozilla yahoo! fame rather than accepting questions from floor end each session interviewed speaker presented audience via twitter worked beautifully he should praised doing wonderful job getting best out speakers sadly all could addressed available time captured them nice summary sessions his blog below find only slides also answers didn&#39;t manage get day : synopsis word out great site experiences require careful crafty execution front end squeezing every drop performance user&#39;s browser tough steve souders friends mobilized army are having bloody good go there common threat work frontend lurks backend clients love &#39;s system more often stinks &#39;ll look examples damaging traces cmss leave behind reduce them ways fight what matters cms avoid wafting over user sacrificing craftsmanship engineeringslides videoquestions answers alexander griffioen ‏@oscaralexander degree influence does client choice @philhawksworth #fqa #fron teers12 varies lot practice alexander ultimately needs totally board with decisions being made critical technology choice found levels expertise opinions vary dramatically one another some arrive preconceptions they want use many cases something which already decided place client&#39;s infrastructure little chance change that others willing enter discussion allow domain expert provide carefully considered recommendations robbert broersma ‏@robbertatwork #fronteers12 suppose means freeform editing where says wysiwyg #fqa point robbert fact mean both type input different implications terms introducing stink both problematic wysiwyg tools edit while seeing formatted output their particularly bad introduce manor inefficient code artifacts without aware this include wide formatting options editor deviate design rapidly degrade designed experience site martijn saly ‏@martijnsaly @codepo8 viewstate actually still exists cannot turned completely make smaller #fronteers12 wasn&#39;t that martijn gather improving net platforms built will adopt improved pattern right away may kind smelly finding its way into work mikevierwind ‏@mikevierwind new edition episerver better!! big form element!! inline js gone etc better! wonderful! update implementation own use enterprise encountered bring level technical debt friction migrating &#39;m sure effort required upgrade latest practices &#39;d like see happen darius kruythoff ‏@dkruythoff any true solutions don&#39;t mess all тихий бес ‏@silentimp @dkruythoff possible tied markup markup representation data design darius must several know moment perch sets itself &quot;tiny cms&quot; think lovely powerful approach begin creating static templates then declare areas those dynamic managed admin application action builds appropriate administration area leaving untainted stink allows complete control enhance various types content limits projects appropriate argue viable solution imagine silentimp ideally separate style behavior learned html css javascript respectively point though ability author generate editors indeed content really limited using defined styles though encourage adhere structured rater giving free reign all total separation style plain text answer just too restrictive times useful scenarios lbinetherlands ‏@lbinetherlands danger customers demand @fronteers wilfred nas ‏@wnas @jashajwysiwyg #smellcms rebecca murphey ‏@rmurphey convince don’t editor ’ve argument :/ yes indeed our responsibilities agency work determine when beneficial detrimental seldom same better others believe effects time case studies point presenting effective alternatives demonstrating potential workflows results helpful hard persuade who reconsider successful hoping community whole help compile communicate alternatives halp! norbert de langen ‏@norbertdelangen other tips besides markdown consider intern site norbert markdown within reach most people would comfortable responsible site accompanying simple guide strategy syntax huge help wiki markups there understood supported success even prescriptive text django suitable mvc frameworks build templates allowing sections need bit rigorous projects inplace editors say fan temptation users navigate around normal switch mode able see gives context appear poor protecting experience interface always seem add ui hooks smells optimising future friendly incredibly hard @norbertdelangen‏ agencies wanting agile system tough one biggest key here buy client unless approach project can&#39;t run truly manor &#39;ve fortunate couple case rare desire define upfront cost scope deadlines makes impossible r/ga borrow aspects tailor practices constraints traditional waterfall engagement helpful tend shift depending client wes oudshoorn ‏@wesoudshoorn describe ideal responsive design challenges facing there randy ‏@randynamic_4 (responsive content) problem suggestions that wes randy transparent such techniques emerging support stripping left enable design gets overlooked burden however delivering large image assets devices scaling down browsers fit screen size important smaller versions &#39;upgrade&#39; lager images appropriate system generation sizes automatically that varya ‏@toivonens @phlhawksworth doesn&#39;t showing coded varya yes serve masters imagine area result focus capabilities consideration developers need overcome symptom given respect deserves historically platform &#39;easy step&#39; producing attention needs recent years come appreciate complexity involved engineering highlight realisation motives give talk victor zuydweg ‏@vzuydweg csm stink seems framework dontyouthink victor let work tools guilty myself plenty past! trick recognising avoid! video sing! talk great!!! thanks silentimp! speakerdeck download pdf coverage collecting nicely page lanyrd soon folks fronteers"
  },{
    "url" : "/blog/bootrapping-front-end-development-with-yeoman/",
    "title" : "Bootstrapping front-end development with Yeoman",
    "text" : "bootstrapping frontend development with yeoman recently addy osmani posted sneak peek yeomanio which described clientside stack comprised tools frameworks that can help developers build beautiful web applications this incredibly timely r/ga have been making some effort us streamline our efforts keep quality high time writing quite ready released teaser video description its capabilities look bang tackles things like: integrated package management unit testing boilerplates scaffolding processes linting optimisation built preview server much more gives nice overview basics all good should aim part their workflow his blog post accompany introduction yeoman also particularly like slightly more involved talk same topic from paul irish google io little wonder practices are coming age gieven ever increasing complexity sophistication development great stuff"
  },{
    "url" : "/blog/sketchjs-adds-convenient-canvas-rendering/",
    "title" : "Sketch.js adds convenient canvas rendering",
    "text" : "sketchjs adds convenient canvas rendering open source javascript library which offers some animation utilities aimed making animating with webgl easier lightweight piece boilerplate code streamlines number common tasks sketch helps by augmenting things like mouse touch keyboard events often neded also sets your loop manage enriched math functions other handy bits pieces check out demo go find more github project site good documentation api wiki many conventions patterns may look familiar those used using prototype"
  },{
    "url" : "/blog/visiting-bbc-online-at-salford/",
    "title" : "Visiting BBC Online at Salford",
    "text" : "visiting bbc online salford last week travelled with some new r/ga colleagues near manchester visit bbc&#39;s media city development talk beeb about their continuing efforts engage more openly effectively community are keen share thinking product plans this event kicked by ralph rivera director future media rivera began afternoon talking ambition unify existing silos around into cohesive experience ten core products home page search news sport weather knowledge learning tv radio cbbc cbeebies set form backbone offering accross various estates common theme throughout day that how best deliver simple intuitive accessible experience &quot; four screens&quot;: tv computer tablets smart phones also hot topic can leverage red button bridge connected engaged content offer many parts have been steadily rolling out all manor innovations only through r &amp;amp; d team steady iterations evolutions across offering news good example that where recently released application android rapidly achieved half million downloads served redress balance slight perceived skew towards apple platforms interesting observed there gap between official activities innovation happens within streams described push close over next year effort will include bother internal external initiatives including events significant financial investment holly goodier head audiences then gave excellent presentation describing contexts people consume products built further screens nicely illustrated vast majority audience capable multiscreen consumption other impressed considered much were clearly looking fulfill desire audience breakdown type which popular different screens learn statistic 4048% tvs now iptv capable personally doubts whether indicator what capabilities same given little tv&#39;s techie geeky bloke exploit bbcs focus children yielded conversations particular interest observation transfer occurs games rich interactions these developed flash curious find planning make most when flash experiencing ever diminishing support mobile platforms html5 other web technologies delivering game seems quite rightly high radar producers children&#39;s line ben gollop f1 ciat o&#39;riordan sport 2012 us insights scale undertaking keep systems running during periods massive demand such olympics horizon great design engineering challenges ahead ensure sevices provision live video invisibly simple flawlessly effective consumers small tasks scales finally daniel danker general manager programmes demand spoke drive simplify meet needs audience rightly far evolve before truly successful found his comments right money personally &#39;ve tv watching methods even living room grown &#39;workflow&#39; rather than just being utterly intuitive certainly something addressing panel discussion lead number television manufacturers interesting took alarmingly long time word &#39;standardisation&#39; like others &#39;d prefer compete things price size picture quality sound energy consumption apps &#39;app store silo&#39; does support give capable dumb display any day"
  },{
    "url" : "/blog/reflecting-on-fullfrontal-2011/",
    "title" : "Reflecting on Full Frontal 2011",
    "text" : "reflecting full frontal 2011 third installment frontal javascript conference hosted each year brighton by leftlogic great event once again lucky enough speaker this year which perhaps gave slightly different perspective day enthusiastic attendee also found excellent experience something that strikes about established itself just two years really valuable addition web development calendar never mind speakers who remy managed secure ( myself among impressive line wellrespected technologists somewhat daunting first outing proper speaker) glance around venue delegates revealed gathering some amazing talent clearly over last couple years been doing something right attract many big brains this all added sweat brow shortness fingernails time stage approached  turned out talk entitled excessive enhancement very well received incredibly encouraging given cautionary tale delivered crowd smart developers wanted learn exciting new techniques opportunities interesting &#39;browser shizzle&#39; many people were nice complement talk after party ( nicely judged with generous kitty behind bar thanks sponsors!) commented how important main message caring regardless cool effects can create them extremely positive thing might reflect kind attracts hopefully points wider community folks share similar set values only good thing web everso unfortunate fact almost every photo &#39;ve seen from features standing front giant sign saying &quot;sex enhancements&quot; ( may have spotted above) guess that&#39;s price pay being arse / channeling chatter happening twitter!  slides are available speakerdeck  interested hear what jeremy ashkenas had say coffeescript admit little hesitant embrace myself jeremy&#39;s session he described design decisions involved when created language demonstrated beautifully intuitive expressive features much think about spoke mentioned hesitance due concerns debugging tools adding layer abstraction atop replied common concern tried seldom problem those using &#39;ll give whirl both marijn haverbeke rik arends fascinating presentations state rich text code editing browser angles rick demonstrating rather splendid looking webbased cloud 9 ide evolving into compelling ide beautiful integrations github heroku manner integrated workflow deployment strategies nice certainly one watch pace seems steadily increasing  enjoyed during entertained got thinking most glenn jones umpteen examples uses emerging apis marcin wichary google showed us glimpse world creating doodles love glenn&#39;s demonstrations superb provoked kinds discussion party introduction intents see his demos blog marcin superbly entertaining goes creation interactive such pac man jules verne doodles premium optimisation reach inventive employed these 24 hour delighters cheeky inspired brilliantly through slick presentation rig crafty bugger! many reviews blog posts day popping aggregated lanyrd from conversations had popular again next year thankfully free ticket already bag reward speaking (thanks remy!) otherwise &#39;d monitoring @fullfrontalconf twitter feed news grab before they get snapped "
  },{
    "url" : "/blog/excessive-enhancement-at-full-frontal/",
    "title" : "Excessive Enhancement at Full Frontal",
    "text" : "excessive enhancement full frontal few days will speaking brighton this conference now its third year done great job capturing much what important exciting many frontend web developers &#39;ve attended each year far &#39;m rather delighted get chance speak technical community brighton fantastic attracts smart speakers knowledgeable enthusiastic audience from wide somehow &#39;ve managed fight way find myself list with some awesome speakers this both nerve racking genuinely exciting &#39;ll slightly running risk being wet blanket conference &#39;ll talk about pitfalls seduced by all cool things that can modern browsers other most likely showing manner engaging bleedingedge developments javascript browser technologies perhaps eliciting occasional &quot;ooh&quot; &quot;ah&quot; crowd confident though while developers love making interfaces experiences also value underlying integrity thing feeds us: web  least that&#39;s drum bringing bang &#39;ll post slides along look back site after event coverage likley posted lanyrd"
  },{
    "url" : "/blog/joining-rga-london/",
    "title" : "Joining R/GA",
    "text" : "joining r/ga while sad previous post share that leaving team can now with some excitement &#39;ll moving join considerable talent present r/ga  mentioned before decision leave difficult one potential provides substantial pull can&#39;t wait get stuck role technical director same have enjoyed much outlook somewhat different organisation digital its core real momentum attracting high profile engaging clients who seem appetite push boundaries creativity innovation work they them since this bigger company development team also rather larger than team sure new set challenges opportunities which will great take &#39;m hoping apply many things &#39;ve learned along way expect regularly surprised ( hopefully delighted) by fresh obstacles there buzz london moment feeling agency brink unleashing recently harnessed deliver ever more awesome work their steady move away from purely flashheavy sites into considered futureproof approach web technologies exciting  part "
  },{
    "url" : "/blog/time-to-move-on-from-the-team/",
    "title" : "Time to move on from The Team",
    "text" : "time move from team after few great years team come new pastures leaving job always find exciting difficult experience this feels particularly true case joined tasked with leading way frontend development efforts across all our clients projects soon became responsible technical output agency represented significant challenge been road entirely free bumps take pride journey that taken time have particular affection respect past present members team feel safe saying quality efficiency small team&#39;s work steadily improving over last couple evolved into something really rather special during &#39;ve also involved countless impassioned debates about what important web these stark contrast had osmosoft where vantage point little different being surrounded by talented designers some whom different relationships web than myself frustrating challenging rewarding enlightening cherish heartfelt debate smart people who disagree here incredibly lucky outrageous talent aspects design fields &#39;s hard describe excitement when pieces fall place perfectly lives your collective expectations say made friends here part experience worked occasional stinker done less stellar those projects yielded biggest lessons tough true thanks everything folks &#39;ve amazing &#39;m sorry moving now awaits"
  },{
    "url" : "/blog/value-in-a-happy-hackday/",
    "title" : "Value in a happy hack day",
    "text" : "value happy hack day few weeks ago team inspired by atlassian model fedex days which have successfully employed before managed make some time development team spend away from office work something themselves clients managers just our own requirements new ways together yielded valuable results notion creating activities like this immediately obvious all there found many different places when working together project this &#39;ll try mention them here kind primer anyone who looking arrange similar their own that might useful need convince folks look carefully things utilisation opportunity cost resourcing arguing activity can difficult protect needed really valuable &#39;d suggest actually vital activity helping remain fulfilled motivated efficient sharp modest day first all single day while would preferred last two had could stay awake productive one plan design develop deploy project also liked involve wider order profit range disciplines specialisms small spared precious nieman journalism lab recently wrote about benefits npr dubbed serendipity days rather that cheated little mind wanted build simple felt basically fulfilled with amount development idea labelled scamp cat named bit hattip sprite cow little side jake archibald each fleeting involvement also because way refer thing cat made us giggle are easily amused having build talk potential users application ahead great get started quickly already idea highlevel requirements identified likely &#39;customer&#39; customer tactic justifying boss financial director making right regular basis yes tools around provide service none quite satisfied needs colleagues ea design departments building thing work presented what built back elders betters eager point out cat most tangible product perhaps least output more important various processes conventions used during insights into technologies gained instance use git flow code versioning git served tremendously well resulted very conflicts high confidence active codebase over now flow client projects win! tuning approach provisioning infrastructure using puppet normalising virtualised environments vagrant win! addition were number pieces reusable came these got rolled set snippets plugins form part bootstrapping suite winning again! favourite fantastic sense spirit evident ourselves tough challenge knuckled down met challenge pull outside influences commitments develops trust mutual respect output all those wanting see actual home web functional enough use just upload reference image add annotations image resulting annotated &quot;scamp&quot; freely shared via public url products already ht spot us &#39;ve feedback planning several iterations evolve functionality"
  },{
    "url" : "/blog/expectations-of-web-development-at-agencies/",
    "title" : "Expectations of web development at agencies",
    "text" : "expectations web development agencies recently involved very short bit consultancy ecommerce company were focussing performance their site browser they more than little surprised software engineering rigour that exhibited given are just agency perhaps &#39;re thought us production lines who churn out sites that&#39;s view this isn&#39;t first time &#39;ve encountered attitude towards agencies seems there perception from companies whose bread butter developing product web agency would never go same lengths them ensure quality performance kernel truth that realistically company can labor over finetuning optimising long periods time making many often constant iterations drive quality term engagements projects luxury afforded difficult agonise finessing all entails hang should experts field practitioners have responsibility clients craft deliver amazing results doesn&#39;t end with branding design should nay must extend through delivery &#39;product&#39; web otherwise everything came before naught where work gone great instil robust practices because without them frankly &#39;d screwed deadlines always tight want lot money stand chance delivering that find ways reduce risk create opportunities innovation particular surprise recent client degree which optimise browser care about stuff &#39;s essential providing good experience user true matter how large project ambitious application while client poured deal effort expertise into backend systems browser technologies kind attention huge ( common) missed opportunity really matters exclaimed &quot;oh treat javascript like real firstclass language!&quot; &#39;m stranger hearing people look upon something supplementary play thing power approachability jquery made many think easy make things happen code doing right takes much skill any other engineering proper process approach standards &#39;ll creating weaker experience setting trainwreck fix around corner"
  },{
    "url" : "/blog/social-media-did-not-cause-the-london-riots/",
    "title" : "Social media did not cause the London riots",
    "text" : "social media did cause london riots seems that this time some responsibility face kind civil unrest have witnessed uk over last few days starting north spreading many other areas across city then cities must return responsible behaviour &#39;m just talking about people turning criminal acts young old men women also about specifically media &#39;s easy watch footage playing depressingly lengthening loop simply shout idiots looting mugging destroying know because that&#39;s what been doing into early hours morning needs careful apparent need fill airwaves with uninterrupted stream coverage disgraceful activities unfolded lead presenters resorting delivering noise rather than facts quickly grew weary hearing latenight struggling content they provided narrative pictures buildings burning angry mobs seemed say things had clearly verified even widely suggested order silence until next link rumour elevated anxiety easily get fuelled way annoyed see familiar smallminded piece commentary surface again one lays blame feet technology throwaway bits mob coordinating blackberry messaging twitter repeated embellished compounded before know are being viewed causes communications mediums like telephones television headlines &quot;nail rioters&quot; demonstrate ignorance disregard journalism which all too familiar &#39;ve noticed ( twitter happens) beginning ask important question &quot;why these rioting&quot; let&#39;s fool ourselves police shooting protest does equal widespread riot complete looting anyone seen carrying expensive phone there underlying reason beyond obvious observation &quot;they bunch thugs&quot; digress point wanted make were caused by existence media watched itv news began demonising casting thing hooded youths today use coordinate their shop lootings happyslappings suggestion saying photography bad pornography computers piracy let terrorist communicate (itv went viewers keep them via twitter!) immeasurable good come from enabling communication our society scale forgotten when commentators looking fashionable soundbite convenient place direct blame small examples top (sleep deprived) head more positive modern usage: raising awareness countless charity fundraising events justgiving twitter official campaigns charities such save children fire departments individuals us distributed updates risk communities during california wild fires infrastructure failed love little idea places stock basically decent jonathan stark decided share his starbucks card allowed either buy coffee balance gift person shared site find heart warming experiment which while tiny thing reminds can tools generous trusting cynical indeed overwhelming response likes engage effort clean after should indication only will solidarity effected using available good focus here problem out fear towards supports thugs vandals departments services hospitals journalists rest us"
  },{
    "url" : "/blog/getting-started-with-node-at-asyncjs/",
    "title" : "Getting started with Node at AsyncJS",
    "text" : "getting started with node asyncjs yesterday had pleasure talking about asyncjs meetup smart motivated developers tech enthusiasts brightonasync which organised by premasagar rose dharmafly fame meets every 2 weeks regular haunt members brighton&#39;s thriving technology community talk first topic async already seen great sessions from simon willison alex young focused nodejs looked some tools created community help ease development slides are available now slideshare download pdf complete keynote presentation too weighs hefty 182mb due animated screencaptures"
  },{
    "url" : "/blog/developing-a-side-project/",
    "title" : "Developing a side project",
    "text" : "developing side project one nice things about being web developer today that thanks incredibly low cost resilient scalable hosting infrastructure abundance free tools technologies are empowered create release them huge audience can experiment with much less risk than ever before seeing evidence this many entrepreneurs startups entering market some more successfully others innovation conversations pubs between friends who have right set skills quickly flourish into exciting viable products ( indeed display inner madness their creators become curiosities simply overlooked) such pubbased conversation lead working something few build each felt would scratch our common itch funnily enough around subject bars ( think other things honestly) there missing resource &#39;ll come back what moment essential point discussions all similar frustration able exert pursue ideas had &#39;re familiar maxim cheap value lies execution &#39;m strong believer indeed us brimming &#39;d like make only had time money development skills design most commodity situation seems time busy day jobs which conducive pursuit vast majority out &quot;big ideas&quot; individually may requisite realise these fanciful ambitions together take view small carefully assembled group motivation ambition could coalesce pretty good job going things freed from constraints supporting existing business ambitions different direction servicing clients decided experiment own satisfaction mostly satisfy need felt work together spare time &#39;make stuff&#39; doing just making wish existed already now &#39;s fun boy ever! first project promised &#39;d return very its infancy starting shape nicely already crowded space finding reviewing bars where better job uk based pub review websites google recently started easier find by reviews patrons don&#39;t experience using them quality data enough &#39;ve begun makes use mobile devices geolocation designed usergenerated content lots fun ( occasionally buzzwordheavy) things talking progresses loving getting hands dirty building web days used feels good django jquerymobile fabric vagrant amazon aws pivotaltracker github terms goals ourselves set exciting hope share details approach usable beta move along when your customer even evenings weekends towards target"
  },{
    "url" : "/blog/the-next-generation-stack-is-nodejs-ready-to-go-mainstream/",
    "title" : "The next generation stack. Is NodeJS ready to go mainstream?",
    "text" : " next generation stack nodejs ready go mainstream &#39;ve been building things with web technologies professionally little more than 11 years now that time used variety technology stacks varying degrees success comfort while university making use faculty infrastructure simplest sites top apache their unix environment then moved into developing applications living found myself working windows nt servers iis asp later using lamp stack which after initial shock system revelation have never looked backthis combination linux apache mysql php tried tested stack powerful available free wonder then become first choice many developers seen swing default from over comfortable world &#39;s gui free interfaces consistent repeatable operations through ssh stage set though think new emerge amount work taking place nodejs both framework itself utilising build high performance really impressive causing quite buzz development community just because performant also enables javascript developers expand writing serverside application support apps need without leaving javascript very empowering stuffthrough are doing adopting common usage pattern can provide its own http server tend several projects being served single box these all make different versions necessary (via handy ndistro distribution model) each publishing port proxy requests those either nginx this brings point now commonly employ looks less like: linux apache mysql php windows nginx nosql nodejs&#39;m trying antagonistic by stating &quot; windows&quot; yes conceit order wangle nnnn 4n whatever real point pieces puzzle beautifully various flavours osx windows &#39;m going &#39;4n&#39; now some big players start serious look node nginx think will common"
  },{
    "url" : "/blog/hitched/",
    "title" : "Hitched",
    "text" : "hitched after more than 14 wonderful years with girlfriend verity last weekend finally tied knot&#39;s hard put into words just how excited get enjoy our wedding day many family friends there risk that this post could become sprawling gushthon &#39;ll try that can take gushing delight read want moment acknowledge effort people making fabulous though perhaps mention few highlightsverity were married lovely little church horringer near bury st edmunds before reception west wing ickworth house surprised nerves didn&#39;t really manage rise too much while waiting fun greeting dear they arrive huge smile their faces seems chase butterflies away downside (just everyone had advised ) time flying by realised even begun running joke among verity often late social engagements lot banter around long she would keep waiting happily only fashionable 10 minutes ( &#39;m told busy soaking atmosphere start looking watch) incredibly well supported attended best man brother stephen quick tip man who already been through his own some great insights which help prepare your big momentnothing however prepared saw make her way aisle towards breathtakingfrom vantage point ceremony seemed spirited being sincere weighty difficult balance strike delighted rev sue nutt did made enjoyable also helps when turn glance congregation see nothing beaming family ( said wouldn&#39;t gush!) memorable readings from verity&#39;s mark sisterlaw faith (ably assisted niece nephew molly stan) sister claire all special poignant moments both sun came out welcome us spent quite happy chatting green climbing carriage feeling like royalty short journey house where greeted toastmaster colin colin helped things roughly schedule looked bobby dazzler next part went blink eye group photos taken grounds wing meanwhile local brass band provided music canapes supplemented ice cream bike serving kids ( adults) have loved spend good mingling gather groups photos awesome ushers did job that moving quicklywhen photographer specific about kind style quality less organised liked meant find what area widened search little writing &#39;ve seen sneaky peeks photos signs are good couldn&#39;t happier friendly talented barrie downie directed well clearly amazing never felt dominating proceedings sensitive important uswhile talking us florist zoe mills operates under name mills bloom fantastic &#39;d eagerly recommend her genuinely details flowers developed excitement calm run helpful energising us carefully listened requests added considerable knowledge bring life thanks zoe!castleton brass icicle tricycle staff wonderfully friendlywith guests seated ready grub got entrance seats loud applause having gobby enthusiastic guarantees generous exciting entrance awesome opted speeches ate certainly food without mounting approached turns out far particularly nervous actually chance thank say firmly believe can&#39;t warmer receptive audience go wrong groom sincere wonderful fatherlaw keith gave excellent warm speech settled mine stephen absolutely remarkable he set delivered entirely rhyming couplets full cringe laugh cry frankly legendary followed drinking dancing quickly combination home playlist ( contents largely crowdsourced guests) provide quality weddinggrade cheese live funk friend nigel plays bass excellent called club soul packed dance floor immediately duration another hearty recommendationanother detail ours should child wedding young now grown over include teenagers ages imagine without debated whether creche service recommended worth effort argued might vanishing adjoining room monitored strangers feel weren&#39;t included thought useful option give several opportunity celebrating prolong evening boy oh boy right! used artful splodgers job entertained manor crafts activities totally engaged hugs specifically worked perfectly very children attendance disruption during speeches drama anyone getting &quot;over tired&quot; yet company lots keen show latest made recommendation!all soon night wound end saying emotional goodbyes retired angel hotel handful staying there final few chatted away bottle two fizz until early hour eyelids heavy manageverity terms fact wrung every drop headed bed 4am sitting window watching edmunds&#39; abbey gate excitedly recounting day think &#39;ll boring details highlights very come"
  },{
    "url" : "/blog/nodejs-i-just-have-to-use-it-for-something/",
    "title" : "Nodejs I just have to use it for something",
    "text" : "nodejs just have use something little while ago inspired by simon willison&#39;s demo fullfrontal conference felt urge make something anything using nodejs gives lightening fast event driven io with javascript running serverside rather nippy v8 engine until nodejs hadn&#39;t seen much need bring server other than testing bit novelty changed all that built ryah dahl strict philosophy that none its procedures should ever perform blocking operation single threaded architecture relies heavily loop anyone good knowledge even familiarity jquery will familiar pattern handlers callbacks closures needed build some really powerful things quickly easily part wanted explore ease which could support cometstyle long polling realtime collaborative task web already getting flooded examples chat rooms irc servers like real application example end resurrected old idea first circa 1999 randomly choosing someone from list tea earthshattering fun simple enough see through completion this incarnation dubbed teafrcom piggybacked lists feature twitter allow people create manage their potential teamakers somewhere they are comfortable app would user recall then lottery selecting winner ( loser) random add suspense ( loosest possible sense) added basic animation gradually got slower revealed captured couple videos showing teafrcom doing stuff one them iphone part allowing lottery visible everyone viewing same wherever are makes trivially handle longlived http requests clients listen out initiation new event since lightweight http html css javascript also runs pretty nicely both iphone palm pre satisfying stand next who site desktop machine start screen animating quick tap your handset cheap thrills know seems though cheapness thrills what exciting &#39;m rocket scientist managed entire complete realtime online views evenings work short hop low cognitive friction developer able these kind things end incredibly liberating bursting seams ideas want build now capable building new yet tool set only detail kept toy masses having suitable place host &#39;ve been dreamhost say happy them great level control access give more compile run easiest cheapest way found powered dedicated virtual server there shortage providers space developers get sophisticated solution commonplace opted linode working equally plumped similar offering slicehost amazon services &#39;ll soon migrate sites onto linux instance resist temptation spend spare time (ha!) noodling away mongodb various &#39;speak javascript&#39; smart keep creating selflessly sharing world free"
  },{
    "url" : "/blog/in-defense-of-ie6/",
    "title" : "In defense of IE6",
    "text" : " defense ie6 really! read that title again &#39;m about argue against placing much blame painful web development door internet explorer 6 going try claim isn&#39;t huge pain arse all good developers let&#39;s face developers love bitch think &#39;s time some accountability problem with simple poor support standards doesn&#39;t always correctly render valid html css requires nudging tweaking finagling order display content desired way its interpretation javascript interactions dom are also less than perfect that&#39;s pain does really warrant such massive hatred from developers developer first instinct would answer &#39;well yes&#39; cost developing extraordinarily high even when compared benefit market share because horrible consuming slog hang moment something meritocracy people tend vote their feet ( mice) will abandon weak experience favor strong this concept stretch browser too surely bad have abandoned adopted better newer more well behaved browser right yes many done exactly that they upgraded ie7 ie8 firefox safari opera chrome else honest hard find better these days quite all everyone who uses understands what just know click icon get &quot; internet&quot; (by which often mean google) directly email one based services) understanding could choose different application accesses hese services perform tasks cognitive leap others realised use home computers work locked using whatever company department dictates often means ie6 why that beef outdated substandard (although ) large organisations needed lock users approved browser having worked few organisations stranger scenario immensely frustrating user forced subpar required trying build webs next new hotness there can reasons largest most difficult dispute actually our own creation ( world) built expensive bespoke applications enterprises (naturally) ensured popular time critically though without thought how code might future standards compliant browsers cases wasn&#39;t future proof result systems depend being viewed function represents risk companies invested heavily development come applications little wonder force employees ie6 remember fault been browsers over years thankfully natural selection let them disappear allowed take over suffers success penetration combine bad habits despite left behind by evolution artificially kept alive were magical lifesupport machine imagine rather die peace then learned lesson &#39;re like happen again staggeringly after grumbling see evidence us haven&#39;t lesson all still write detects used before specify behaviour accordingly should doing testing chosen implementation then implementing object detection detection way improves support starts browser enjoy benefits falling particularly aggravated learn ie8 set ie7 meta tag provide &quot;internet 7 compatibility mode&quot; feature exist microsoft explain opt &quot;backwards layout behavior&quot; other words exists around fact wrote satisfy quirks ie7 thinking fail quality improved (have conformance w3c css) didn&#39;t want resistant upgrading sites failing shiny new browsers provided way continue misinterpret code afraid call &quot;bullshit&quot; practice create another wave likely stuck noncompliance land require old rendering engines legacy server them only rising tide standards various specific hope avoid locking given make sure don&#39;t into situation ever tempted grumble ie6 help similar mess mind"
  },{
    "url" : "/blog/using-quicksilver-to-control-lastfm/",
    "title" : "Using Quicksilver to control Last.fm",
    "text" : "using quicksilver control lastfm while &#39;ve been handy triggers itunes like needing switch attention from what &#39;m working order skip track pause playback set rating whatever can find out how create trigger one many great tutorials web moment though myself listening more more have looking similar way application couldn&#39;t plugin achieve this about writing applescript which could with quicksilver much whizz managed put following script together track currently playing application:tell application &amp;quot;lastfm&amp;quot; activatetell &amp;quot;system events&amp;quot; tell process &amp;quot;lastfm&amp;quot; click menu item &amp;quot;skip&amp;quot; &amp;quot;controls&amp;quot; bar 1 end tellend tell after saving suitable location ( utils folder where keep lots scripts utilities) run script simple! happy result created some other controls love ban play stop assigned them all keyboard triggers only wish that without giving focus generally fine because running second display doesn&#39;t steal attention would nice get execute command activating &#39;d welcome suggestions anyone fu than "
  },{
    "url" : "/blog/flash-v-web-behind-enemy-lines/",
    "title" : "Flash v Web. Behind enemy lines",
    "text" : "flash v web behind enemy lines ok &#39;m being over dramatic sometimes does feel like bit stealth mission pity that forgot bring any stealth! &#39;ve been working here team 3 months now enjoying myself greatly there issue challenges daily basis lot work here yet big advocate using open web technologies past have ranted about how better when build things out technologies than from proprietary which seal content limiting opportunities get reconcile that well just development agency are brand communications agency who digital arm arm ( part) produce all sorts output destined video content interactive dvds kiosks jawdroppingly beautiful such produced by some very talented folks many cases regard their weapon choice building this context fine with often can ideal hunger crosses sites problem enjoy stunning well crafted experience much next guy pretty strong opinions use deliver experience lives similar category pdf document put web won&#39;t make site ( write this find hearing wesley snipes proclaiming: &#39; cat oven don&#39;t biscuit!&#39; perhaps &#39;ll refrain level trash talking now) vocal opinion cats biscuits) new role while company developers fans raised few eyebrows brought interesting debates particularly chuffed hear colleague stephen playfully remark must part &quot;anti mob&quot; got news steve loads us &#39;re thinking getting tshirts! truth antiflash choosing right tools job contention job delivering information widest possible audience greatest amount confidence everyone ( everything) wanting then wrong ted year tim berners lee gave fascinating talk where he touched his vision future (which until html5 its native tag comes along &#39;ll need watch online) &quot;open data web&quot; access documents conceived timbl 1989) also ready core beneath sounds good &#39;d rather site lets people bookmark pages interest copy paste other places addressable via hypertext links accessed screen readers search engines provide deeper microformats usually during conversation someone will bang fist say &quot; flash!&quot; delighted proven wrong consider challenge show heard sites offer ( least much) stuff developing never shown evidence love see examples comments section below awaits your links time being keep challenging automatic choice projects that&#39;s common sense right every technology should justified"
  },{
    "url" : "/blog/moving-on-from-osmosoft/",
    "title" : "Moving on from Osmosoft",
    "text" : "moving from osmosoft last week both sad exciting because gearing start new job theteam londonbased communications agency with slightly silly name working ( company that created plenty named things itself) had been since grew one man band into open source innovations team bt terrific experience along way think safe say have learned more about web during time than any previous small part due quality people around honed appreciation what makes good citizen technology choices delivery interaction design exhibiting taste importance &#39;view source&#39; openness data availability &#39;m going miss raging debates big opinions which regularly surfaced osmosoft there are intelligent articulate osmonauts salute ! now pastures new theteam young growing digital arm impressive client list &#39;ll involved deliver browser how chance influence nature by pushing unobtrusive technologies best practices range sites increase reach diversity draw looking forward challenge transition made easier number things firstly already established bit relationship cohosting recent show tell revealed some common interests enthusiasms hoping crossover events like that secondly spent developing project called tiddlywiki while scale back that reason turn altogether keen keep contributing building applications besides &#39;s nice bump familiar friends tiddlywiki irc room really sparked lot enthusiasm when comes software compelling content addition tiddlywiki own feed desire make great stuff anyone can use thanks everything blast!"
  },{
    "url" : "/blog/leveraging-jquery-and-jquery-plugins-in-tiddlyWiki/",
    "title" : "Leveraging Jquery and Jquery Plugins in TiddlyWiki",
    "text" : "leveraging jquery plugins tiddlywiki recent release v25 included something rather exciting : jquery popular javascript library now part corethis number reasons core functions can use perform all manner dom inspection manipulation refactor ton code benefit from jquery&#39;s blistering sizzle engine pass burden maintaining lots utility over those clever bods which will simplify codebase ultimately make easier read maintain plugin developers able their plugins that&#39;s great news both hardcore people dabbling first time elegantly expressive powerful superbly documented this lowers barriers entry would developer smooths way exisiting developers there huge wealth utilised by tiddlywiki quality many these tremendously high bring &#39;em ! how does get started into available via macro let&#39;s take look example fred colleague osmosoft stumbled upon creates nice navigation structure html list element examples documentation seemed like good contender bringing useful tiddlywiki include plugin need copy tiddler then tag with systemconfig after saving file reloading us use availble provide snazzy ui any ul li elements page syntax that simple: // turn element id &#39;mylist&#39; funky listnav $(&#39;#mylist&#39;)listnav(); great want call without having write javascript create macro us easily navlist anywhere turns contents this:&amp;gt; available should delivers macro new tiddler created called &#39;listnavplugin&#39; once again tagged systemconfig becomes knows interpret start with just ensure invoke // object configmacroslistnav = { add handler function invoked &amp;gt; handler: function(place macroname params wikifier paramstring tiddler) some magic alert(&amp;quot;&#39;m gonna listnav!&amp;quot;); } }; see working two more tiddlers myfruitylist holds items examplelistnav macro reloading call open tiddler our this: good yet flesh out bit &#39;ll text desired where might have used help (like createtiddlyelement) helper append document// { target passed parameter var title params[0]; items contents storegettiddlertext(title); (text) generate list textsplit(&#39;&#92;n&#39;); jquery(&#39;&#39;)attr(&#39;id&#39; &#39;listnav&#39;)appendto(place); jqueryeach(items function( itm) jquery(&#39;&#39;)text(itm)appendto(list); }); &#39;re getting somewhere &#39;ve grabbed each line them unordered list render navlist requires little extra that plugin// objectconfigmacroslistnav nav bar &#39;listnavnav&#39;)appendto(place); apply listnav listlistnav(); }}; when save reload page cool! hang though looks bit rubbish saw earlier css style easy enough sylesheet adding this: default styles (adapted http://wwwihwycom/labs/downloads/jquerylistnav/20/listnavcss) configshadowtiddlersstylesheetlistnav &#39; &#92;n&#39; + &#39;#listnavnav { margin: 20px 0 10px; }&#92;n&#39; &#39;lnletters overflow: hidden; fontsize: 09em; display: block; float: left; padding: 2px 6px; border: 1px solid #eee; borderright: none; textdecoration: }&#92;n&#39;+ lnlast :hover lnletters lnselected backgroundcolor: #eaeaea; lndisabled color: #ccc; &#39;lnlettercount textalign: center; 08em; lineheight: 1; marginbottom: 3px; #336699; }&#39;; storeaddnotification(&#39;stylesheetlistnav&#39; refreshstyles); done turning boring old dynamic indexed navigation credit concise notice name than common idiom $ could simply replace $ work beware! are other libraries shortcut don&#39;t introduce possibility clash luckily simple around that wrap closure argument ( explained site) whatever shortcut like final this:(function($) set alias &amp;gt;; $(&#39;&#39;)attr(&#39;id&#39; $each(items $(&#39;&#39;)text(itm)appendto(list); }; &amp;quot;&#92;n&amp;quot; &amp;quot;#listnavnav }&#92;n&amp;quot; &amp;quot;lnletters }&#92;n&amp;quot;+ &amp;quot;lnlettercount }&amp;quot;; storeaddnotification(&amp;quot;stylesheetlistnav&amp;quot; refreshstyles); })(jquery); explore finished example tiddlywiki"
  },{
    "url" : "/blog/mashing-up-flickr-in-the-client-with-jquery/",
    "title" : "Mashing up flickr in the client with jQuery",
    "text" : "mashing flickr client with jquery recently saw tim stevens post twitter about slide show he had built using his liveloom application grabs some photos from tagged &#39;osmosoft&#39; then renders them all manner visual effects flex while available via tim&#39;s app are impressive &#39;m big advocate open web standards enjoy making things html javascript rather than tools like flex first encounter made by iphone where couldn&#39;t run temptation cobble together simple mashup which could operate any javascript capable browser too much resist let&#39;s pretend that there aren&#39;t already mashups galore going able rival advanced can offer simple attractive run lots devices seemed fun valuable exercise also keen see just how quickly easily produce this jquery forever good manipulating dom chance demonstrate that shared result efforts &#39;poloaroiderizer&#39; after getting great feedback promoted its very own domain check out over polaroiderizercom turns out task incredibly took few hours one evening interface rendered css such will work modern browser used request jsonp api jsponp gets around cross domain scripting restrictions delivers json snap parse render logic server code animations provided css dom manipulation jquery&#39;s animation functions display needs render without polaroiderizer bit toothless doesn&#39;t mean forget those javascript submit tag don&#39;t have capabilities form your standard &#39;ll find yourself search results page another example progressive enhancement topic close heart tried unobtrusify little bonus building way supereasy share results sure entered echoed into address page fragment identifier interrogating frag id useful ajax applications colleague michael mahemoff explained recently when loads looks stored starting point means bookmark shows email uri here few: http://polaroiderizercom/#philhawksworth http://polaroiderizercom/#thewebisagreement http://polaroiderizercom/#ted2009"
  },{
    "url" : "/blog/unobtrusify-your-javascript/",
    "title" : "Unobtrusify your Javascript",
    "text" : "unobtrusify your javascript recently jon lister colleague mine osmosoft showed website made by his friend joshua bradley site used some javscript code from tiddlywiki&#39;s animation engine create nice visual effects loved design could see room improvement implementation &#39;m big advocate unobtrusive progressive enhancement set about producing quick demo how similar result achieved most webkind accessible way available using jquery behaviors been published unobtrusifyhawksworxcom aim create effect that josh&#39;s make sure page readable without javascript use images headings look snazzy they are required order content sense use only keep html clean possible reduce number http requests few possible improve performance approach first all wrote text page chose simple statement tried structure such would sense regardless which sections were expanded then simplest markup logically represent with its various headings this textonly browsers search engines webcrawlers screenreaders wellknown css technique replace images ensure remain nonhuman consumers while presented those able appreciate them simple prevent browser scrolling element overflow:hidden scoot out textindent now clear can display image backgroundimage specify dimensions desired backgroundimage property will resize correct size automatically something like this:#myheading { textindent: 9999px; overflow: hidden; backgroundimage: url(myimagegif); width: 380px; height: 123px;} had 6 render way also wanted have mouseover give affordance clickability require another rather than having 12 download (which separate requests) combined all these into single image firstly combining one meant total bit smaller due file compressed ( tiny saving every little helps) secondly there overhead making when comes performance fewer better method cuts 11 requests score! thirdly uses same original heading their associated images need preload alternate avoid nasty pause mousing over already downloaded ready display bonus use &#39;image sprite&#39; each heading just needed backgroundposition one attributes common save this:h1 url(images/unobtrusive_spritegif); 380px;}h1#uj backgroundposition: 0 0; 123px;}h1#cmh 123px; 150px;} point our looks this exactly want things appear javascript ability toggle sections shown full behavior suggest clicked (since cannot) essence enhancement perfectly serviceable web (albeit one) enhance enabled easily unobtrusively add elements page hide expanded sections this:$(&#39;#wrapper &amp;gt; div&#39;)hide(); hides div direct descendent id wrapper ( chosen structure) default clickable clicking changing cursor them this:```$(&#39;#wrapper h1&#39;)addclass(&#39;clickable&#39;);``` class &#39;clickable&#39; specifies cursor: pointer; show hover repositioning background mouse hidden click heading remember none happen unless available additional trick flash unstyled fouc (gratifyingly pronounced &#39;fooooook&#39; john hicks) being downloaded very well explained karl swedberg excellent learningjquerycom site better picture what going why swing unobtrusifyhawksworxcom exercise right citizen view source hitting source often best learn done go ! get hands dirty!"
  },{
    "url" : "/blog/enthusiasm-and-good-food-at-tiddlyparis/",
    "title" : "Enthusiasm and Good Food at Tiddlyparis",
    "text" : "enthusiasm good food tiddlyparis yesterday fortunate able make quick trip over paris attend meeting tiddlywiki enthusiasts tiddlyparis arranged by long time community member una mesa stalwart saq imtiaz this event great chance put some faces names developers users whose work have been enjoying benefitting from timegathering funky bar champs elysees 10 us shared beer two got talk about what were all doing with get know each other little better spectrum experience pleasingly broadzap recently found using manage his notes background material support effort writing novel he also tinkering teamtasks made observation that once start experimenting ways customise extend tiddlywiki can easily find yourself absorbed endeavour ideas spring forth even faster than execute them end jacques who working since very early days jacques showed pim 4 year old tablet pc file well 3mb size (something beast terms) chock full content heavily customised mean really customised! had moulded fit way borrowed best adaptations around web advanced workflow management various task lists widgets doohickies bit hard drink perfect goes everywhere him pledged blank copy available point &#39;ll need speak french though carried out extensive translation delighted learn relative newcomer pier google maps / mashup gathers information popular activities movements paris chose primarily because its ease use platform score! (he attracted snazzy tiddler animations!)loic dachary revealed several resources which while failed stumble upon perhaps targeted more techie geeks among us they impressive nonetheless favorite tiddlywiki_cp ruby gem providing library command line interface tiddlers files vice versa incredibly useful any developer builds variety tiddlywikis keen meet bidix quietly producing assets time recent includes itw iphone edition itw went pocket help venue read agenda man behind tiddlyhome lovely seemingly simple hosted resource deployed app engine next release (which play with insists isn&#39;t quite ready prime yet) part spoke teamtasks happy being used degree people table answered questions bts interest motives involved such project community &#39;ll go again here already articulated colleagues their blogs new pet mine which following convention absurd names dubbed jigglywiki ( turns out accent lends name much gravitas due soft &#39;j&#39; marvelous!) jigglywiki deserves blog post own now through let&#39;s just describe experiment explore 30 might like developed ground jquery javascript adopt unobtrusive approach jigglywiki ( only hear now!) created discussion proppy loic particularly vocal potential implementation built modular jquery debate raged properly plugins dependancies topic &#39;m sure will discussing later post thanks folks encountered passion making feel welcome conducting entire english rather required considerable some &#39;s worth stretched far enough order meal bloomin&#39; great) few drinks without totally shaming myself big imtiaz putting together when&#39;s one! bient&amp;ocirc;!"
  },{
    "url" : "/blog/announcing-jigglywiki-a-tiddlywiki-experiment/",
    "title" : "Announcing JigglyWiki. A TiddlyWiki experiment with jQuery",
    "text" : "announcing jigglywiki tiddlywiki experiment with jquery once upon time resistant idea javascript libraries that due couple things firstly comfortable writing projects myself didn&#39;t like relying someone else&#39;s code which couldn&#39;t easily inspect secondly there weren&#39;t really any then were few they all well blunt bit pants all changed when came along lightweight elegant powerful library originally developed by john resig provides fast efficient interrogation manipulation dom borrows conventions from css xpath provide concise expressive queries constructed &#39;s worth checking out haven&#39;t already been around since before existence libraries long along never way take advantage such could argued itself helper functions many common tasks extent this though little limited evolved serve single purpose: drive tiddlywiki recently have longing replacing lot core built jquery developing turns new one similar discussions occurred past different considered began imagine other benefits reengineering first principles taking lessons learned over its lifetime became too hard resist course 2 reasonably train journeys set about building own version core settled number objectives: use functions make modular very small additional functionality included via bespoke plugins unobtrusive javascript document sensibly parsed screen readers web crawlers allow navigation even without html valid according w3c conform naming convention adopt suitably ridiculous working title project important thing note attempting replace tiddlywiki see jigglywiki experimental prototype explore ways 30 might evolve also hoped keep quiet enough progress point happy reveal general discussion proved tricky thanks excitement gossip spreads discussion groups! current state some more basic terms displaying tiddlers allowing editing demonstrates how elegantly degrade are available below few build demonstrate those scenarios just html &#39;ve here data store visible can navigate tiddler links css will function above only look prettier environments where available slow initialised things until kicks html javascript now hidden default content displayed additional dependent included &#39;d love get comments approach interested advise issues able avoid opportunity develop into did come about &#39;m less bug reports though early proof concept contain bugs glitches source project subversion repository come!"
  },{
    "url" : "/blog/get-your-task-management-wiki/",
    "title" : "Get your Task Management wiki",
    "text" : "get your task management wiki after bit hiatus &#39;ve recently been concentrating developing pet project teamtasks again simple application built using tiddlywik this little project by means new have tinkering with quite while working other projects had sit patiently corner wait back  rather gratifyingly few people seen early work expressed interest all manor purposes attention made realise that time promote from its place playground (version 03 can still found there those keen glancing rear view mirror) big time! least own getteamtaskscom born download latest version (v04 writing) configure fit habits this open source &#39;m doing best resist urge tinker until think &#39;s perfect before letting out into wild may find things about don&#39;t perfectly just like that&#39;s case then please let know better yet fix show living old &quot;release early release often&quot; mantra here welcome contributions form suggestions bug reports fixes enhancements criticism praise sticky buns pats back hugs along new site release way touch keep track developments obviously leave comments here now also follow twitter &#39;d hear developments followed twitter too course subject random utterances after hours launching getteamtaskscom already nice response this really helps motivated track gains momentum more pairs hands work &#39;ve spent some osmosoft today planning next set enhancements which will soon listed inspectroll 05!"
  },{
    "url" : "/blog/nba-updates-on-twitter/",
    "title" : "Nba updates on twitter",
    "text" : "nba updates twitter just time 2008 playoffs heavily influenced by robbie clutton&#39;s marvellous uk football scores service have created resultsthis simple service monitors results published rss feeds from totallyscores then sends twitter following twitter can get alerts all match results only interested your team that&#39;s fine choose instead follow team there are currently accounts : http://twittercom/celtics_results http://twittercom/cavs_results http://twittercom/hornets_results http://twittercom/jazz_results http://twittercom/lakers_results http://twittercom/magic_results http://twittercom/pistons_results http://twittercom/spurs_results&#39;ll adding more teams ready next season want make sure that team&#39;s results feel free email (phawksworth [] gmail [dot] com) push team top todo list&#39;m also readying mlb provide major league baseball will active very soon with teams please poke &#39;ll create their account code which drives this first outing into world python find here take use wish welcome feedback suggestions code gentle though said this playing pythonmany thanks nice folks carsonified permission site&#39;s background image resultsthanks balakov who used each account icon under creative commons license flickr"
  },{
    "url" : "/blog/jsspec-bundle-for-textmate-helps-with-writing/",
    "title" : "Jsspec Bundle for Textmate Helps With Writing",
    "text" : "jsspec bundle textmate helps with writing recently osmosoft have been trying make good one our pledges: introduce unit testing framework tiddlywiki developmentalong way examined several javascript frameworks found that suited needs quite nicely resembles popular rspec popularly used by ruby developers result dabbling away tests favoured text editor rather lovely textmate since this repetitive task figured worth creating some helper speed things along offers easy powerful bundles automate tasks help your code development quickly put together simple set snippets which can act quick reference what methods are available let rapidly create test code users download just doubleclick use textmatedownload bundle won&#39;t go into workings here rather learn about official sitefeel free take modify fit purpose enjoy"
  },{
    "url" : "/blog/how-to-create-and-distribute-lovely-screencasts/",
    "title" : "How to create and distribute lovely screencasts",
    "text" : "how create distribute lovely screencasts while have been meaning start posting some work spread word explain details that are difficult describe textafter much tinkering think arrived nice setup found good way screencasts making them available stream over web download consumption your own sweet time this post &#39;ll share findings can set yourself with similar environment use mac these tips levelled squarely mac users out there sorry everyone else &#39;m just writing about what knowhere example screencast best view hd here order need following things: good content know &#39;re going say/show prepare advance have clean environment screen capture content optimal settings compress correctly host most effective waylet&#39;s take look those more detail1 content  worth practicing show getting everything ready advance don&#39;t waste any time far having something compelling show afraid one2 screenremoving clutter which distracting untidy help communicate message effectively since want disrupt everyday work created new user called demo only capturing also when laptop give presentation using projector separate account allows keep desktop totally clear screen resolution captures projection chose hide mounted drives whatnot by modifying finder preferences increased font size icon optionsthere value simple wallpaper displayed again aim reduce noise distractions people all see photos kids learning ride bike they trying absorb demonstrating3 capture settings snapzpro software there others suited needs worked well choose important here took little time settle right resolution initially 1024x640 scale did choosing 70% gave result big file good end 1280x800 didn&#39;t down all reason due channel through point 5 lowered frame rate little dropped 18 frames per second save size like let viewer keys pressing during demonstrations used rather handy mousepose application highlight location mouse pointer 4 compress correctlynow recorded content make sure appropriately will course influenced chosen hosting distribution method compressed h264 quality output squeezing down other settings shown below5 host way wanted able embed website allow interested viewers keep reducing barriers accessing require install software before being them reason flash based video seemed sensible ubiquity player browsers suitably quality vimeocom site bit sticking moment yet streaming embedded videos their site that apparently soon videos from fullscreen superslick vimeo fitted requirements pretty heartily recommend slick offer lots support content"
  },{
    "url" : "/blog/observing-twitter-behaviours/",
    "title" : "Observing Twitter Behaviours",
    "text" : "observing twitter behaviours seems that twitterverse all flutter following recent blog posts from phillie casablanca paul downey &#39;m watching this with keen interest been subject much impassioned discussion our officefrustrated by noisy habits some twitterers phil opened good practices led him posting 10 commandments twitter attempt articulate good highlight annoying when tweets record right behind him quick follow commandments interesting though observe response his post see how many people agree strongly object suggestionsmany people being told they should use that&#39;s fair enough isn&#39;t any one person dictate twitter rather patterns usage will emerge find own ways using get most out reasonable express think best value can derived describe useful guidelines either adopt wish eyes what doing also first admit word &#39;commandment&#39; may bit strong used elicit response job done!sharing similar frustrations downey took things step further describing two different camps users: twits twerps judging responses are upset labelled twit twerp thinking terms little strong (paul clarified recently tweet) personally merely playful who sometimes displays twerpish tendencies(!)one worry have articulated jp rangaswami better than likely here experience newbie avoid creating environment which intimidating unwelcoming new user emerging nanoformats add great must never try all instead provide complete accessible information them anyone interested enough them scared irc like years seemingly ferocious users knew conventions inside out didn&#39;t appear tolerate newcomers &#39;d hate end that tips rather iron rod force &#39;our way&#39;"
  },{
    "url" : "/blog/osmosoft-return-from-leweb3-intact/",
    "title" : "Osmosoft return from LeWeb3 intact",
    "text" : "osmosoft return from leweb3 intact last week entire team visited paris attend conference initially had intended attending simply delegates time went by decided that might able build something handy use conference perhaps others find useful too ripperap (then dubbed &#39;tiddleleweb&#39;) conceived considered building tool based tiddlywiki where could make notes conference effortlessly share those with others while being shielded network hiccups would cool ready much little ripplerap found getting date accurate information about agenda website fiddly including using basic navigation ripplerap seemed like natural choice added value also used microformats markup export sessions your calendar since were planning hand out copies other have stand explain what doing ripplerap open source world bt shared which busy throughout think having paul downey around talk people through his excellent popular uberdoodle &#39; web agreement&#39; (more than 60 thousand views flickr writing) helped draw stand rather retrochic bat phone raised smile enabled every copy free calls order get support feature made easy mojo bt&#39;s rest exposure its 21csdk explains twia yossi vardi ripplerap distributed mantra &#39;release early release often&#39; ringing our ears there arguing suggestion this application &#39;s early days releasing software way been revelation &#39;m more traditional cycle possessively guard work until are good ready face scrutiny conferences this hear regularly always met lots enthusiastic head nodding room lot feedback finding all valuable hopefully next will some improvements suggested whole pretty good speakers really interesting unexpected gems vardi philippe starck entertaining although gather these talks already available youtube listening jp rangaswami ever inspiring lucky enough listen several ad hoc discussions noted rarely saw talking without small crowd gathering him unexpectedly myself stage now enjoying glory photos described &quot;jp takes le web supported by phil hawksworth&quot; brilliant! (just don&#39;t tell anyone nothing &#39;helpermonkey&#39; capacity!) presentingthere couple things did irksome though (aside absurd name third year leweb 3 refers 30!) allocation various bit odd times panel featured loic meur (organiser leweb3) very long time them blunt self indulgent well except their trimmed ridiculously short slots notably doc searls who particularly looking forward rush presentation lightening speed told he didn&#39;t take questions booo disappointed handling questions auditorium loic times him rude dealt asking questions especially any challenging panel perhaps mr just trying care shielding them potential awkwardness stage rudeness artefact slight language barrier suspect facilities reservations split into separate buildings actually problem staging audiovisuals outstanding food superb provision power row main welcome led believe significant amount money spent providing wifi sadly wifi unreliable hey that&#39;s conferences why thing fingertipscheck took leweb3 osmosoftians talented posted pictures flickr"
  },{
    "url" : "/blog/opening-a-finder-window-from-the-terminal/",
    "title" : "Opening a Finder window from the Terminal",
    "text" : "opening finder window from terminal stumbled upon simple method your current session location recently since something that have regular need thought there might other mac users out who also find this useful time time set things easy use whenever just follow these two steps:first using preferred text editor create file which contains command:!/bin/bashopen /system/library/coreservices/finderapp $pwd should name with whatever want call later named fndrsecond place somewhere visible path collect any little utility scripts like together directory called utils added path make all its contents easily accessiblenow can simply type fndr open present directory help adding path recommend creating home ( may even already exist) bash_profile gets invoked enter environment add item by entering line bash_profile file:export path=&#39;$path:/users/philh/utils&#39;&#39;m always look bits pieces life easier osx think are difficult excellent os room shortcuts speed common tasks gems osx world would great could post them comments thanks!update:this done single command turns out this:open "
  }]}
