markjgsmith

2019/12/31 #

Today’s links:

  • Tech.eu Podcast - Robert Falck (Einride) and Rudi Skogman (Blok) - This episode is a few weeks old but I found the interviews in the autonomous trucks sector and Finland’s startup scene interestingtech.eu #

  • Managing my dotfiles as a git repository - The author uses an interesting technique I hadn’t seen before of making his entire $HOME directory a git repodrewdevault.com #

  • Awesome Newsletters - A curated list of awesome newslettersgithub.com #

2019/12/30 #

Today’s links:

  • Vaughan Oliver, Graphic Designer for Pixies, Cocteau Twins, and More, Dead at 62pitchfork.com #

  • 5 things in web development I learned this yeardev.to #

  • How Many Websites Should We Build? (In the context of handling desktop browser and also mobile requests)css-tricks.com #

  • Software development 450 words per minute (2017) - What it’s like to code websites when you are blind, pretty interesting to read about a typical blind dev setup and workflowwww.vincit.fi #

  • The author of the previous post shares his updated setup in this HN thread, he is using VSCode and Eclipse editors nownews.ycombinator.com #

  • Why working from home is good for business - Matt Mullenweg from Automattic (makers of Wordpress) makes a good case for distributed-first companieswww.ted.com #

  • Common Javascript Promise mistakes every beginner should know and avoid - I liked this article, I’m still on the whole not loving Javascript Promises though, there are all these weird edge cases with error handling, the logic get split into several different places with async functions, try/catch blocks, resolve/reject, the flow control is just not as comprehensive as caolan/async, and in a lot of cases I think it’s not much better in terms of ledgeability and as a defense against callback hell - callbacks for all the complaints are simple and IMO quite wysiwyg, easy to step through in a debugger - Currently I much prefer callbacks to Promises, at least in nodejs, I find it weird that everyone is mad for Promisesgosink.in #

  • California is rewriting the rules of the internet - Businesses are scrambling to keep up - Similar to GDPR in the EU but this set of regulations is called California Consumer Privacy Act (CCPA) and will be rolled out by July 2020www.latimes.com #

2019/12/29 #

Today’s links:

  • A personal API - Interesting idea, it would be cool to see something like this take offblog.webb.page #

  • A brutal year - how the 'techlash' caught up with Facebook, Google and Amazonwww.theguardian.com #

  • In what scope are module variables stored in node.js? - Useful to know how code in a module gets wrappedstackoverflow.com #

  • Strongly typed vs More-strongly typed - Interesting article that goes a bit deep but not too deep and neatly avoids the weeds, I don’t currently use types in any of the Javascript I write (i.e Typescript) - It’s not that I won’t use types, it’s that so far I haven’t seen enough benefit to using them, if I do then I want to properly understand the trade-offs, because I think in a lot of cases it’s not worth it - Also I really like that in javascript types are optionaldocs.google.com #

  • Google’s Monopoly is Stifling Free Softwaremedium.com #

2019/12/28 #

Today’s links:

  • "server" is hard to define - this article does a really good job of demystifying a word we use a lot in the computer industry, it turns out it means quite a lot of different things depending on the context, people who work with computers everyday tend to have internalised all the different meanings and automatically switch depending on the context (often without realising), but for newbies and people outside the industry that can be quite confusingjvns.ca #

  • Guido van Rossum exits Python Steering Committee - This happened last month but I guess is somewhat of a big dealdiscuss.python.org #

  • Why Open Hardware on Its Own Doesn’t Solve the Trust Problem - Worth taking the time to read this article IMOwww.bunniestudios.com #

2019/12/27 #

Today’s links:

  • Netflix was the best-performing stock of the decade, delivering a more than 4,000% returnwww.cnbc.com #

  • Why npm lockfiles can be a security blindspot for injecting malicious modulessnyk.io #

  • Simulating physical reality with a quantum computer - I had high hopes for this article because it appeared to actually try to solve something useful other than crypto, but by about 1/2 way through its all a jumble of maths notation, complex numbers, matrices and other quantumish - All I could think about as I was reading this was how wonderful JavaScript and JSON areahelwer.ca #

  • How we can protect truth in the age of misinformationwww.ted.com #

  • Smashing Podcast Episode 2 With Liz Elcoate - What’s So Great About Freelancing? - It’s nice to find a web development podcast with some british accents because everyone seems to be american these dayswww.smashingmagazine.com #

2019/12/26 #

Today’s links:

  • When We Fail To Understand Privacy As A Set Of Trade-Offs, Everyone's 'Solutions' Are Unhelpfulwww.techdirt.com #

  • Why's It Called Stratford International If It Has No International Trains?londonist.com #

  • Why I love Coding in C - A programmer’s ode to writing computer programs in C, a nice description of the feeling of being ‘close to the bare metal’lord-left.github.io #

  • Dropbox Transfer - a new file delivery tool from Dropbox - “Send large files to anyone”www.dropbox.com #

2019/12/25 #

Today’s links:

  • Beatles trivia - Strawberry Fields Forever is actually two completely different mixes welded together in the middlewww.beatlesbible.com #

  • ‘Advertising breaks your spirit' - the French cities trying to ban public adverts - I liked this piece, it gives a nice snapshot of the perception of advertising in France, which is similar to in other parts of the world but with some french peculiaritieswww.theguardian.com #

2019/12/24 #

Today’s links:

  • Kutt is a modern URL shortener with support for custom domains - shorten URLs, manage your links and view the click rate statistics - Written in Nodejsgithub.com #

  • Travis Kalanick is leaving Uber’s board of directors, he has sold 90% of his shares worth a total of $2.5 billionwww.theverge.com #

  • Minimalism - Likely the most undervalued development skillvolument.com #

  • Chatroulette Was Shorthand for Chaos Online - Then Came the 2010s - I had completely forgot about Chatroulette, probably one of the last big OMG inspiring websites, it was this perfectly imperfect combination of simplicity, connection, with a bit of the chaoticness of MySpace, but kind of risquéwww.wired.com #

2019/12/21 #

Today’s links:

  • Apple is reportedly working on a secret satellite communications projectwww.geekwire.com #

  • A software-defined radio is a radio implemented with reconfigurable software - “Software-defined radios offer the allure of instant reconfigurability in every dimension: frequency, modulation, and protocol. In theory, you would simply run a different program to implement an entirely different radio - whether it’s a FM broadcast receiver, a UMTS handset, or a Bluetooth device”luaradio.io #

  • The modern web is becoming an unusable, user-hostile wasteland - Comprehensive roundup of a lot of the issues seen on a daily basis that make browsing the web a horrible experience in 2019omarabid.com #

2019/12/20 #

Today’s links:

  • This Page is Designed to Last - A Manifesto for Preserving Content on the Webjeffhuang.com #

  • Bear - Write beautifully on iPhone, iPad, and Macbear.app #

  • Chrome 80 - Content Indexing for PWAs, ES Modules for workers and Moreblog.chromium.org #

  • A pretty good round up of use cases where Node.js is a good fit, there’s a lot of variety so it’s vaguely useful to have a broad understanding of what is possiblewww.simform.com #

2019/12/19 #

Today’s links:

  • UK to create regulator to police big tech companieswww.ft.com #

  • Jack Dorsey Just UNFOLLOWED Mark Zuckerberg - I’m mildly ashamed that my initial reaction to this news was OMGgizmodo.com #

  • Spotify’s Tastebuds feature will let you explore your friends’ music tasteswww.theverge.com #

  • I just spent the whole day trying to get Safari bookmarks onto my iOS device, previously you could sync them using iTunes, I've been doing that for years, but now that doesn't work, and it seems you have to use iCloud - Since iCloud bookmark sync is basically impossible, eventually I just emailed an HTML export file to myself, opened each link one by one and added each one as a bookmark one by one in Safari on iOS - On the one hand pretty tedious, but soon I will be able to do it while ziping around in a self driving carwww.apple.com #

  • Billionaire Musk releases all Tesla patents to help save the Earth - The hope is that the 'open source philosophy' will accelerate the introduction of electric vehicles made by other manufacturers and thus have a much bigger positive environmental impact for the planetnews.abs-cbn.com #

  • It’s Interesting to see that although a lot of folks have been forking Chromium lately, some people are also forking Firefox to create their own browser, this article outlines the reasons behind going that direction0x65.dev #

2019/12/18 #

Today’s links:

  • Mac Pro 2019 Teardown - Scores 9/10 on repairability - "An almost perfect machine"www.ifixit.com #

  • A Rare Russian Tech Triumph, a Police Raid and a Backlash - More on the recent Nginx controversywww.nytimes.com #

2019/12/17 #

Today’s links:

  • Map of water ice on Mars shows where NASA (and SpaceX) are likely to send their first astronautswww.geekwire.com #

  • Your Makefiles are wrong - Nice tutorial, some tips on getting rid of the need for using tabs, I kind of want to try out some of my build processes with maketech.davis-hansson.com #

  • Cronhooks - Schedule one time or reoccurring webhooks - These webhook saas tools can be pretty useful when you are starting out building an app because integrating a scheduler into an app can be a lot of effortcronhooks.io #

  • I wish there was a way to choose between different recommendation algorithms on YouTubem.youtube.com #

  • This is the HN thread to the article I linked to earlier about text-only news, there’s some good topics discussed in therenews.ycombinator.com #

2019/12/16 #

Today’s links:

  • Google halts Chrome 79 rollout on Android after bug deletes user datawww.zdnet.com #

  • A History of CSS Through Fifteen Years of 24 ways24ways.org #

  • What I've learned over 10 years on Stack Overflow - I think a lot of what is mentioned in this article is on point, as a reader and occasional poster for about 10 years my initial reaction to having to post a question is extreme caution, I’m not sure that’s the intention of the people running the site (most likely it isn’t), but that’s how it is now for me, I’m even a bit worried posting this link (on my own linkblog!)blog.mattbierner.com #

2019/12/15 #

Today’s links:

  • The Oddly Comforting Allure of London’s Vintage Tube Textiles - It’s odd that all those years in London taking the tube and it never occurred to me that the seat patterns were retro stylish, they were just the slightly boring seats, but looking at them now I can see there is a certain style to themwww.messynessychic.com #

2019/12/14 #

Today’s links:

  • Google Maps has now photographed 10 million miles in Street Viewwww.cnet.com #

  • Apple and Spotify can now play podcasts on your Alexa-enabled devices - I guess if you are into Alexa then this is pretty coolwww.theverge.com #

  • Google Culture War Escalates as Era of Transparency Wanes - I hope they figure this out, I know there is a lot of headwinds for Google recently, but overall I still like Google, they have some great products and they are in so many countries, that's a really hard thing todo - Maybe there is a maximum size for a company with a Google type culture, well ok then lets have more of those instead of a few massive mega corps running the worldwww.bloomberg.com #

  • Stonehenge 1875 family photo may be earliest at monumentwww.bbc.com #

  • The cowardice of Brave - A rather scathing critique of the new Brave browser business model, my thoughts so far about Brave can be broadly described as ‘caution’, I don’t really understand the business model, I think it’s a healthy discussion to be having, because a lot of people have been switchingpracticaltypography.com #

  • Everybody calling the Cybertruck "brutalist" is wrong - I liked this article a lot including this description of the car “It’s the equivalent of a cultural somersault”www.inverse.com #

2019/12/13 #

Today’s links:

  • An article about the use of “Link In Bio” - Perhaps that’s what I should have called the linkblog globe icon feature, I wasn’t aware at the time that it was a common way to call that feature, and there aren’t any user bios at the moment - I agree about the importance of outbound links for the open webanildash.com #

  • The English language is finally losing its grip on the internetwww.wired.co.uk #

  • There’s a quantum computer bullshit detector twitter account causing a stir - my take on the whole quantum calculator stuff - show us something that does more good in the world than a cat gif, then I’ll be a bit more interested, maybe not the best metric but I am but a lowly web developerwww.wired.com #

  • Leaders from Seattle’s ‘boring’ unicorns on staying private and their most important lessons learned - Sometimes I feel like in tech you either have to run a unicorn company or work for a unicorn company, where is the spectrum and diversity? In the real world this would be like walking down the street in a normal/average sized town and every single shop would be a Walmartwww.geekwire.com #

  • Is there dark matter at the center of the Milky Way? - Based on this article, I’m not convinced these scientists are fully aware of their assumptions, using fakes to ascertain the truth is very tricky businessm.phys.org #

  • Google Assistant can now interpret 44 languages on Android and iOS - It's a live translation with auto-suggestions for replies to help speed up the conversationwww.techspot.com #

  • Google has setup a free phone line in India where you call and can ask questions and get Alexa style answers, so people without internet access can get information similar to doing a google search - Sort of reminds me of the speaking clock, but for knowledgewww.techspot.com #

  • Russian police raid NGINX Moscow office - Can't say I'm entirely surprised by this news, it was pretty much the only part of my tech stack that hadn't had some major controversy, Nginx is really great software I wish them all the best, I hope they find a way to keep the software open sourcewww.zdnet.com #

  • In what is presumably completely unrelated to the nginx news, I saw a live russian band play an outdoor concert this evening, they played some great russian folk music interspersed by some covers played in a russian folk music style, their cover of ACDC's Thunderstruck was like some sort weird but brilliant echo through time, I felt as though I was at the russian folk concert but superimposed ontop of an invisible massive ACDC stadium rock concertwww.youtube.com #

2019/12/12 #

Today’s links:

  • Firefox 71 released - It's got a collection of some of the best new features and improvements that I have seen in a browser release, especially if you are a javascript developer - web sockets message inspector, network full-text search, console multi-line editor mode, inline variable preview in debugger, Promise.allSettled(), Media Session API, log on event listeners, also a bunch of CSS featureshacks.mozilla.org #

  • Chrome 79 released - Lots of new security features, tab freezing looks interesting, back-forward caching, also interested to see the UI update to clearly show if you are signed into Chrome or notwww.zdnet.com #

  • Jack Dorsey Wants to Help You Create Your Own Twitterwww.wired.com #

  • My internet connectivity is unbelievably horrendous, sites barely load, just did a speed test - 0.76 Mbps download and 30 Mbps upload - not a lot I can do with that, a little bit one sided me thinks, no YouTube no podcasts, even my git remote commands hang half the timeen.m.wikipedia.org #

2019/12/11 #

Today’s links:

  • George Laurer co-inventor of the barcode dies at 94www.bbc.com #

  • Daring Fireball T-Shirts and Hoodies - Makes me want to have some Linkblog merchandisedaringfireball.net #

  • Twitter backing initiative for open and decentralized standard for social media - They plan to hire a small team to work on the standardmobile.twitter.com #

2019/12/08 #

  • New Linkblog feature: highlightable messages

    A big part of linkblog is the ability to see the context taround a link, to see the other links that were posted on that day. It’s been possible to link directly to a day in your linkblog since the beginning. But until now, it hasn’t been possible to link directly to a specific message in a day.

    For example here is the link to yesterday in my linkblog. These day urls are copyable from the hash link (#) next to each day.

    The latest feature is the ability to link directly to a specific message in a day. When the page loads from a highlightable message url, the message that is specified in the url will momentarily be highlighted. After a few seconds the highlight will fade back to the regular linkblog page. This strikes a good balance between being able to point directly at a specific message while also keeping the context around the message focussed.

    Linkblog Redesign - Landing page 1

    After loading a linkblog using a highlightable message url you will know which message was being referenced but also be able to see clearly the context of that message. Note that you have to have javascript enabled in your browser for the feature to work.

    One challenge implementing this feature was how to do it while minimising the effects on the linkblog page. Adding a clickable element next to each message on the page to copy the url to the clipboard would negatively impact the minimalism and readability of the page. For the moment the way to get a highlightable message url is from the search page.

    Each message in the search page results has a highlightable message url as the hash link. Since most often users will probably be searching for the most recent messages, I’ve updated the search page so that performing a search with an empty search box returns all the messages with latest listed first.

    Linkblog Redesign - Landing page 1

    I hope you enjoy the new feature!

Today’s links:

  • It All Starts with a Humble <textarea> - Good example of how to build a site using progressive enhancement24ways.org #

  • France Plans a Revolution to Rein in the Kings of Big Tech - The thing that stands out to me about this story is how uncommon it is for a person to have a 1 letter surname, I don’t remember ever seeing a 1 letter surname anywhere in Europe beforewww.wired.com #

  • Cédric O (born 1982) is a French politician, currently serving as Secretary of State (junior minister) for the Digital Economy of Franceen.m.wikipedia.org #

  • Good news that ESA is planning to address space debris with special space robot - Two bits of worrying info from the article, there are 3000 inactive satellites orbiting earth, and the ESA head of space debris said that when it comes to collision alerts there are a lot of false positives because they are ‘acting based on probabilities’, that doesn’t sound goodwww.theguardian.com #

  • My iOS device has stopped being able to recognise the power adapter so this might be my last post from the device as I am down to a few % power, and earlier today I read about the new iPhones that will have no ports at all, what a strange coincidenceapple.com #

2019/12/07 #

  • Steady and stable progress

    Along with the linkblog site redesign and more recent foundations building, I’ve made steady progress with other items too, including:

    • Improved useability during signup, activation and onboarding
    • Built foundation for upcoming SSL for Custom Domains feature
    • Added tags to profile page data exports
    • Optimizations for custom domains
    • Database connection improvements
    • Kept 3rd party modules up to date
    • Faq and privacy pages updates
    • Code build and deploy system overhaul
    • Server provisioning system overhaul
    • Refactored analytics for better anonymization
    • Improved security with CSP policy
    • Improved integration and unit tests
    • Frontend optimizations by using compiled templates on client
    • Better data validation

    Because of previous work done to build a staging environment and load balance the site across several nodes I've been able to make all these changes while keeping downtimes to a minimum.

    Here is the status page for the previous month:

    Linkblog status page - November 2019

Today’s links:

  • Building a search engine from scratch - Another post in their series which I'm finding very interesting on building an independent search engine0x65.dev #

  • I installed the Strapi quickstart yesterday, pretty good setup instructions and no setup issues, the thing that's missing is that it's not at all obvious how to run in a debugger, which is crucial imogithub.com #

  • What is the difference between a Library vs A Framework?dev.to #

  • I just added a "Latest Linkblog.io News" section to the main linkblog landing page that collects together all the linkblog-related blog posts I've written to datelinkblog.io #

  • Larry, Sergey, and the Mixed Legacy of Google-Turned-Alphabetwww.wired.com #

  • The Rising Complexity of JAMstack Sites and How to Manage Them - An interesting approach to JAMStack sites where you use a CMS to generate the static sitecss-tricks.com #

2019/12/06 #

  • Building the foundations for the future of linkblog

    Earlier in the year I did a pretty big redesign of the site which lead to upgrading the style framework which ended up being rather a lot of work, but the site looks great now and still minimalist. The redesign resulted in me building and introducing 3 new core components:

    • Redesigned billing system - Compliance with EU Regulation
    • Scheduler - Periodically runs jobs completely separate from handling website requests
    • Queues - Mechanism to co-ordinate scheduled jobs in a fault tolerant way

    This post gives a bit of description around these components, because although they are not directly visible in the linkblog UI, you might find it interesting to know some of the details of how the site operates under the hood, and maybe give you a bit of an idea of the possible directions for the future.

    If you’ve been following the news you might have noticed that there has been a wave of introductions of new internet regulations all around the world. In the EU they have introduced Strong Customer Authentication (SCA) which affects linkblog because the servers on which the site runs are hosted in the UK. The new rules meant a complete redesign of the billing system and with only 60 days notice. The previous integration with the payment processor Stripe was using their Checkout product, which was simple to setup but doesn't meet the new EU regulations. The re-architected integration is more complex and uses a combination of Stripe Elements for the UI and the new Stripe Intents API which complies with the latest EU regulations.

    The billing system is now active and whereas previously it could only handle 1 type of subscription, it’s now ready to handle multiple subscription types, the first addition to the Linkblog Basic subscription is likely going to be SSL for Custom Domains, the plan is to slowly add new services to compliment the basic functionality.

    As part of the billing system redesign, it became apparent that I needed a way to receive status updates from Stripe called webhooks. Handling the webhooks is non-trivial because an acknowledgment has to be returned immediately, the same webhooks sometimes get sent multiple times, the order isn't always guarantied, the task necessary to process the webhook differs depending on the type of webhook received and processing tasks take varying lengths of time to complete.

    The strategy I settled on was to record the incoming webhooks in the database, respond to Stripe, and have a scheduler component run jobs to periodically process the recorded webhooks. I had to restructure the app quite a bit to be able to handle regular website requests and also separately run scheduled jobs. This is a good strategy but problems occurred because when a cluster node was rebooted, there was the possibility of jobs failing midway through and not completing.

    To make the setup fault tolerant I had to build a queuing system to help orchestrate the scheduled jobs. The queues are hosted on a separate machine to the website cluster nodes, and the scheduled jobs which periodically run on these read and write messages to the queues during execution. Queues are useful because if a website node goes down midway through a job, another node can automatically pick up the job and finish the processing when it sees the item in the queue didn’t complete within a certain timeout period.

    So a webhook arrives, is recorded in the database, and scheduled jobs run and add messages to the appropriate processing queue. These queues are monitored by more specific scheduled jobs running on the nodes which take new items off the queues and carry out the appropriate processing tasks, for example sending out email notifications.

    The cool thing about queues is that they can be used for lots of tasks that don't need to be part of handling website requests. I’m hoping to migrate a bunch of tasks like data exports and generating custom domain certificates to use the queuing system in the near future. Being able to off-load tasks to the queues will keep the site performing well.

    The new billing system, the scheduler and queues are 3 core components that are fundamental going forward.

Today’s links:

  • This map shows how the US really has 11 separate 'nations' with entirely different cultures - Great mapwww.businessinsider.com #

  • One online artwork a day for 30 days, starting 16th of november 2019 - This feels quite old school internet to meotherti.me #

  • Amazon expands Bezos’ elite ‘S-team,’ adding 6 execs from emerging branches of the company - Kind of interesting to see how the big guys are organized, like watching the vfx credits at the end of a big motion picturewww.geekwire.com #

2019/12/04 #

  • Linkblog new look

    Linkblog has had a site redesign!

    The redesign was actually done and released several months ago, but there were quite a few changes needed after the redesign so this is the first chance I’ve had to blog about it.

    Part of what I learnt from the launch on Indie Hackers was that people really wanted a way to try out the software before committing to a subscription. So as part of the redesign I also updated the signup process so that the initial signup creates a 14 day free trial (no credit card required).

    Linkblog Redesign - Landing page 1

    Linkblog Redesign - Landing page 2

    Linkblog Redesign - Landing page 3

    The redesign itself is based on one of the free bootstrap themes from Themes For App, I customised one of the themes to create the main landing page, signup and signin pages.

    Linkblog Redesign - Main page

    The rest of the site needed a bit of a refurbish so I decided it was a good time to upgrade the style framework I use called Bootstrap from v3 to the latest v4. I was able to get rid of some rather crufty old frontend code and replace it with new bootstrap components that use solid and modern CSS. Visually the site is a lot cleaner, the most obvious change is the toolbar along the top of the page which has changed from solid black to a lighter grey, which I think along with the other improvements in the latest Bootstrap results in a site that is nice to use and keeps with the minimalist ethos.

    One big issue was that the latest Bootstrap broke the site content security policy (CSP) which ensures that only the right 3rd party libraries get loaded into the pages. There was a related CSP issue on the repo and with the help of the commenters I found a workaround to make sure that the site is still secure. According to the bootstrap devs, the CSP issues will be addressed in v5.

    Little did I know that the redesign was only the beginning of a long voyage of discovery, though there wasn't a whole lot of actual movement so it's more a voyage of the mind and keyboard. I'll be following up this post with a summary of the recent major changes in the linkblog foundations.

    I hope you like the new look!

Today’s links:

  • Google co-founders Larry Page and Sergey Brin relinquish control of Alphabet to CEO Sundar Pichaiwww.theverge.com #

  • There's So Much More Microplastic in the Ocean Than We Realized - Surely it’s got to be extremely dangerous for tiny animals at the bottom of the food chain to be eating microplastics, if it has a bad effect on these organisms then it directly affects every living organism above them, and the fact that it’s not possible to remove these particles via water treatment combined with the knowledge that we are producing more and more plastic must be cause for alarmearther.gizmodo.com #

2019/12/03 #

Today’s links:

  • Facebook pushes data portability with a new photo transfer tool which enables moving pictures to other services starting with Google Photosabout.fb.com #

  • Amazon Braket – Amazon releases a quantum computing web service with 3 types of fancy looking quantum computersaws.amazon.com #

  • Clive James Got It Right - This article was the first I had heard of his death, it’s a wonderfully written piece that reminded me how much I liked to watch him on the tele, RIPwww.newyorker.com #

2019/12/02 #

Today’s links:

  • The world needs Cliqz - The world needs more search engines - I also think that there could be better more varied search tools, why aren’t there specialised search engines?www.0x65.dev #

For enquiries about my consulting, development, training and writing services, aswell as sponsorship opportunities contact me directly via email. More details about me here.