<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Ben Arent</title>
    <description>Ben Arent is Director of Product at Teleport, based in Oakland, CA. Writing on product, security, infrastructure access, and developer tools, plus conference talk summaries and IoT projects.
</description>
    <link>https://benarent.co.uk/</link>
    <atom:link href="https://benarent.co.uk/feed.xml" rel="self" type="application/rss+xml"/>
    <pubDate>Thu, 11 Jun 2026 04:06:52 +0000</pubDate>
    <lastBuildDate>Thu, 11 Jun 2026 04:06:52 +0000</lastBuildDate>
    <generator>Jekyll v4.4.1</generator>
    
      <item>
        <title>AI. Finally, a Reason for My Homelab</title>
        <description>&lt;p&gt;For the past decade I’ve been running some form of a home lab. It started as a playground to experiment with various projects, and has provided a learning ground for testing and breaking projects. I’ve often spent more time fixing than building, but that’s part of the fun.&lt;/p&gt;

&lt;p&gt;Fast forward, 10 years, there are many awesome tutorials and videos from people doing useful things with their homelab. From Jeff Geerling awesome homelab guides, with practical tips on running a &lt;a href=&quot;https://www.youtube.com/watch?v=RZ8ijmy3qPo&quot;&gt;home server for media content&lt;/a&gt;,  Christian Lempa, has a great overview of running home assistant and various VMs and Kubernetes servers &lt;a href=&quot;https://www.youtube.com/watch?v=mGVj5W0RbHo&quot;&gt;among other things&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;At work we’ve an internal #homelab discussion channel, I’ve been sharing internally and with other friends and wanted to put it all into this blog post.&lt;/p&gt;

&lt;p&gt;Why is a dedicated Local AI lab worth it?&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Lower Power AI&lt;/li&gt;
  &lt;li&gt;Cost&lt;/li&gt;
  &lt;li&gt;Local Processing&lt;/li&gt;
  &lt;li&gt;Experimentation&lt;/li&gt;
  &lt;li&gt;Unhinged AI&lt;/li&gt;
  &lt;li&gt;Multimodal: Wisper / Flux.1 / Segment Anything Model 2&lt;/li&gt;
&lt;/ul&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/duke-400-a7024b684.webp 400w, /assets/images/generated/reboot_images/blog/2024/duke-600-a7024b684.webp 600w, /assets/images/generated/reboot_images/blog/2024/duke-800-a7024b684.webp 800w, /assets/images/generated/reboot_images/blog/2024/duke-1000-a7024b684.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/duke-400-a7024b684.jpg 400w, /assets/images/generated/reboot_images/blog/2024/duke-600-a7024b684.jpg 600w, /assets/images/generated/reboot_images/blog/2024/duke-800-a7024b684.jpg 800w, /assets/images/generated/reboot_images/blog/2024/duke-1000-a7024b684.jpg 1000w&quot; type=&quot;image/jpeg&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2024/duke-800-a7024b684.jpg&quot; alt=&quot;A 2U rack-mount server with blue LED power light perched on a concrete ledge in a basement utility area&quot; width=&quot;1776&quot; height=&quot;1184&quot; /&gt;&lt;/picture&gt;

&lt;p&gt;&lt;em&gt;This AI server’s gone rogue, ditching its fancy data center for a gritty concrete shelf - talk about unhinged intelligence with an edge(y) new home!&lt;/em&gt;&lt;/p&gt;

&lt;h3 id=&quot;the-hardware&quot;&gt;The Hardware&lt;/h3&gt;

&lt;p&gt;For Hardware, I’ve opted to repurpose a low-power AMD server. I was previously running a low TPU CPU, but I’ve quickly started to hit cache limits and have instead opted for an AMD Ryzen 5 5600X, which has a good amount of cores for a low cost per watt. I maxed out the RAM at 128GB, and opted for a more ‘business’ motherboard.&lt;/p&gt;

&lt;p&gt;Since I wanted a 2U setup, I opted for the NVIDIA RTX 4000 Ada GPU. I opted for the NVIDIA RTX 4000 Ada which is both low profile and low power. It &lt;em&gt;only&lt;/em&gt; has 20GB of RAM, and 6,144 CUDA cores. To overly simplify, the more RAM a card/ bunch of cards the larger parameter model it can run.&lt;/p&gt;

&lt;p&gt;There are a &lt;a href=&quot;https://vram.asmirnov.xyz/&quot;&gt;few calculators out there&lt;/a&gt; to estimate GPU VRAM usage of transformer-based models. For current Summer 2024 Open-Source Models.  Rough LLM Parameter Size to GPU Size Chart&lt;/p&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th&gt;Card&lt;/th&gt;
      &lt;th&gt;RAM&lt;/th&gt;
      &lt;th&gt;Llama 3.1 Model&lt;/th&gt;
      &lt;th&gt;Gemma 2 Model&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td&gt;RTX 2080 Super&lt;/td&gt;
      &lt;td&gt;8 GB&lt;/td&gt;
      &lt;td&gt;8B (FP8 or INT4)&lt;/td&gt;
      &lt;td&gt;Gemma 2 2B (with optimizations)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;RTX 4080&lt;/td&gt;
      &lt;td&gt;16 GB&lt;/td&gt;
      &lt;td&gt;8B (FP16)&lt;/td&gt;
      &lt;td&gt;Gemma 2 2B&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;RTX 4090&lt;/td&gt;
      &lt;td&gt;24 GB&lt;/td&gt;
      &lt;td&gt;8B (FP16), 70B (INT4)&lt;/td&gt;
      &lt;td&gt;Gemma 2 9B&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;NVIDIA RTX 4000 Ada SSF&lt;/td&gt;
      &lt;td&gt;20 GB&lt;/td&gt;
      &lt;td&gt;8B (FP16), 70B (INT4)&lt;/td&gt;
      &lt;td&gt;Gemma 2 9B (with slight optimizations)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;NVIDIA RTX 5000 Ada&lt;/td&gt;
      &lt;td&gt;32 GB&lt;/td&gt;
      &lt;td&gt;70B (INT4)&lt;/td&gt;
      &lt;td&gt;Gemma 2 9B&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;NVIDIA RTX 6000 Ada&lt;/td&gt;
      &lt;td&gt;48 GB&lt;/td&gt;
      &lt;td&gt;70B (FP8)&lt;/td&gt;
      &lt;td&gt;Gemma 2 27B (with optimizations)&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;NVIDIA H100&lt;/td&gt;
      &lt;td&gt;80 GB&lt;/td&gt;
      &lt;td&gt;70B (FP16)&lt;/td&gt;
      &lt;td&gt;Gemma 2 27B&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td&gt;8 x NVIDIA A100&lt;/td&gt;
      &lt;td&gt;640GB&lt;/td&gt;
      &lt;td&gt;405B (FP8)&lt;/td&gt;
      &lt;td&gt;Gemma 2 27B (full precision) and larger models&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;In the world of home brew LLM builders, there are a few other options. Grabbing a &lt;a href=&quot;https://www.reddit.com/r/LocalLLaMA/comments/1aduzqq/5\_x\_a100\_setup\_finally\_complete/&quot;&gt;few A100s off eBay&lt;/a&gt;, running Mac Minis, or using a mesh with &lt;a href=&quot;https://github.com/exo-explore/exo&quot;&gt;exo&lt;/a&gt;, to combine a range of computers.&lt;/p&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-400-ba695367a.webp 400w, /assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-600-ba695367a.webp 600w, /assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-800-ba695367a.webp 800w, /assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-1000-ba695367a.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-400-ba695367a.png 400w, /assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-600-ba695367a.png 600w, /assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-800-ba695367a.png 800w, /assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-1000-ba695367a.png 1000w&quot; type=&quot;image/png&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2024/NVIDIA_RTX_4000_Ada_GPU-800-ba695367a.png&quot; alt=&quot;An NVIDIA RTX 4000 Ada GPU card laid flat next to a banana for size comparison on a concrete surface&quot; width=&quot;1500&quot; height=&quot;1999&quot; /&gt;&lt;/picture&gt;

&lt;p&gt;&lt;a href=&quot;https://www.reddit.com/r/nvidia/comments/1c7mlx0/gpus_can_be_cute_without_rgb/&quot;&gt;My now famous 2U GPU&lt;/a&gt;&lt;/p&gt;

&lt;h3 id=&quot;the-software&quot;&gt;The Software&lt;/h3&gt;

&lt;p&gt;The current software stack is pretty basic, I’m currently running the machine as a traditional server without any extra virtualization.&lt;/p&gt;

&lt;h4 id=&quot;os--graphics-drivers&quot;&gt;OS &amp;amp; Graphics Drivers&lt;/h4&gt;

&lt;p&gt;I did this both for performance and to keep things simple. For example CUDA &amp;amp; GPU Docker Support works, but can be patchy.  In the same vein, I recommend using a Linux OS with strong and well tested graphic drivers. &lt;a href=&quot;https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html&quot;&gt;Ubuntu Server + NVIDIA Container Toolki&lt;/a&gt;t is perfect for server setups, and I recommend using PopOS for Desktop use as it takes the yak shaving out of dealing with Nvidia Drives.&lt;/p&gt;

&lt;h4 id=&quot;docker&quot;&gt;Docker&lt;/h4&gt;

&lt;p&gt;At the next layer of abstraction, I would recommend using Docker and NVIDIA Container Toolkit. Using a Docker workflow will keep you sane when testing other Open Source projects and dealing with the mess of Python and Python versions adopted by the community. If you want to avoid Docker, pyenv or anaconda* ( for commercial usage ) can help support you.  &lt;a href=&quot;https://gist.github.com/benarent/12a6ab5a4a86844a2cf88e3c4e0a05fa&quot;&gt;This is my basic setup&lt;/a&gt; for Ollama, Open WebUI and Weviate running in Docker.&lt;/p&gt;

&lt;h4 id=&quot;llm-software&quot;&gt;LLM Software&lt;/h4&gt;

&lt;p&gt;For managing the Large Language Models, I recommend using &lt;a href=&quot;https://ollama.com/&quot;&gt;Ollama&lt;/a&gt;. There are many other hacky and open-source options, but Ollama is to LLM management for what Docker is to LXC Container. It just works. It helps download the weights, and will also aim to run and load balancer between the GPU Ram, CPU and RAM.&lt;/p&gt;

&lt;h4 id=&quot;connectivity&quot;&gt;Connectivity&lt;/h4&gt;

&lt;p&gt;Since my 2U server, Duke, is banished to my crawl space. I needed a way to access it, when at  home I used a simple SSH setup, but when out of home, I used Teleport. Both to access the ollama CLI and to access one of the few UI wrappers. &lt;a href=&quot;https://github.com/open-webui/open-webui&quot;&gt;Open UI&lt;/a&gt; has been perfect for me.&lt;/p&gt;

&lt;h3 id=&quot;ai-demo&quot;&gt;AI Demo&lt;/h3&gt;

&lt;p&gt;Here is a quick overview of how I access my homelab Duke Server.&lt;/p&gt;

&lt;video playsinline=&quot;&quot; controls=&quot;&quot; style=&quot;width:100%&quot;&gt;
  &lt;source src=&quot;/files/video/blog/hack02_blog.webm&quot; type=&quot;video/webm&quot; /&gt;
  &lt;source src=&quot;/files/video/blog/hack02_blog.mp4&quot; type=&quot;video/mp4&quot; /&gt;
Your browser does not support the video tag.
&lt;/video&gt;

&lt;h3 id=&quot;other-demos&quot;&gt;Other Demos&lt;/h3&gt;

&lt;h4 id=&quot;models--model-performance&quot;&gt;Models &amp;amp; Model Performance&lt;/h4&gt;

&lt;p&gt;I currently switch between models for different purposes, but these are rundown of ones I use the most.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://ollama.com/library/gemma2&quot;&gt;Google Gemma 2&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://ollama.com/library/llama3.1&quot;&gt;Llama 3.1&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://ollama.com/library/dolphin-mixtral:latest&quot;&gt;Dolphin Mixtral&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Tip: To try different floating point models, click the ‘View More’ link on Ollama.&lt;/p&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/view_more_ollama-400-138d703c4.webp 400w, /assets/images/generated/reboot_images/blog/2024/view_more_ollama-600-138d703c4.webp 600w, /assets/images/generated/reboot_images/blog/2024/view_more_ollama-800-138d703c4.webp 800w, /assets/images/generated/reboot_images/blog/2024/view_more_ollama-940-138d703c4.webp 940w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/view_more_ollama-400-138d703c4.png 400w, /assets/images/generated/reboot_images/blog/2024/view_more_ollama-600-138d703c4.png 600w, /assets/images/generated/reboot_images/blog/2024/view_more_ollama-800-138d703c4.png 800w, /assets/images/generated/reboot_images/blog/2024/view_more_ollama-940-138d703c4.png 940w&quot; type=&quot;image/png&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2024/view_more_ollama-800-138d703c4.png&quot; alt=&quot;Ollama model selector dropdown showing llama model variants from 2b to 27b with file sizes up to 16GB&quot; width=&quot;940&quot; height=&quot;540&quot; /&gt;&lt;/picture&gt;

&lt;h4 id=&quot;multimodal&quot;&gt;Multimodal&lt;/h4&gt;

&lt;p&gt;Most LLMs focus on text based inputs, but many can also work with sounds, image and even robotics. I plan to explore this space more, now my test is steady.  I plan on running  &lt;a href=&quot;https://github.com/openai/whisper&quot;&gt;Whisper&lt;/a&gt; for local text to voice and &lt;a href=&quot;https://ai.meta.com/blog/segment-anything-2/&quot;&gt;SAM 2 for video analysis&lt;/a&gt;.&lt;/p&gt;

&lt;h4 id=&quot;ide-integrations&quot;&gt;IDE Integrations&lt;/h4&gt;

&lt;p&gt;I’m currently using GitHub Co-Pilot with VSCode. I also have the option to augment Cursor with my home server. This is something that’s on my todo list but I’m currently happy with the current support and setup of my models.&lt;/p&gt;

&lt;h2 id=&quot;privacy&quot;&gt;Privacy&lt;/h2&gt;

&lt;p&gt;An added benefit of having a local AI server is the ability to have complete control over data sent. This means I can happily chat with my tax returns, knowing I’m not sending all of my data to multiple 3rd parties.&lt;/p&gt;

&lt;h3 id=&quot;cost-of-the-server&quot;&gt;Cost of the Server&lt;/h3&gt;

&lt;table&gt;
  &lt;thead&gt;
    &lt;tr&gt;
      &lt;th style=&quot;text-align: left&quot;&gt;Part&lt;/th&gt;
      &lt;th style=&quot;text-align: left&quot;&gt;Cost&lt;/th&gt;
    &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;GPU: NVIDIA RTX 4000 Ada GPU&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$1,279*&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;CPU: AMD Ryzen 5 5600X&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$133&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;Ram: 128GB RAM&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$187&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;Motherboard: ASUS Pro B550M-C&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$99&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;SilverStone Technology 2U Dual Rack**&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$169&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;Disk: 1TB Nvme Disk&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$80&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;Banana&lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;$0.40&lt;/td&gt;
    &lt;/tr&gt;
    &lt;tr&gt;
      &lt;td style=&quot;text-align: left&quot;&gt; &lt;/td&gt;
      &lt;td style=&quot;text-align: left&quot;&gt;&lt;strong&gt;$1,907.4&lt;/strong&gt;&lt;/td&gt;
    &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;

&lt;p&gt;* ~ There are a lot of older GPUs, NVIDIA Tesla etc, but these are still low in clock speed, vRAM and generally consume a lot more Power.  If I was building a workstation/part-time gaming rig, I would opt for a 4090. A M2 Max Pro at $1,999, would also be a tempting option, but costs an eye-bleeding $4799 to have the same amount of RAM. &lt;br /&gt;
** ~ This case is terrible, there are many other 2U cases that are better and cheaper.&lt;/p&gt;

&lt;p&gt;Considering I easily spent $560 on Google Vertex this summer. I feel Ok with the predictability of the current smaller but sustainable home rig setup.&lt;/p&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/google_vertex_bill-400-b34f0dc1d.webp 400w, /assets/images/generated/reboot_images/blog/2024/google_vertex_bill-600-b34f0dc1d.webp 600w, /assets/images/generated/reboot_images/blog/2024/google_vertex_bill-800-b34f0dc1d.webp 800w, /assets/images/generated/reboot_images/blog/2024/google_vertex_bill-1000-b34f0dc1d.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2024/google_vertex_bill-400-b34f0dc1d.png 400w, /assets/images/generated/reboot_images/blog/2024/google_vertex_bill-600-b34f0dc1d.png 600w, /assets/images/generated/reboot_images/blog/2024/google_vertex_bill-800-b34f0dc1d.png 800w, /assets/images/generated/reboot_images/blog/2024/google_vertex_bill-1000-b34f0dc1d.png 1000w&quot; type=&quot;image/png&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2024/google_vertex_bill-800-b34f0dc1d.png&quot; alt=&quot;Google Cloud billing bar chart showing Vertex AI costs of $560.38 across July and August&quot; width=&quot;1999&quot; height=&quot;969&quot; /&gt;&lt;/picture&gt;

&lt;h2 id=&quot;plans-for-duke&quot;&gt;Plans for Duke&lt;/h2&gt;

&lt;p&gt;Now I’ve Duke up and running, I’m planning to use it as a local test bed for new models. The current Docker + Ollama Flow works smoothly. Having the ability to connect to it while on the go, is prefect for my use case. I’m interested in using it as a potential hacky backend for a few web apps. I plan to share my experience once these are up and running.&lt;/p&gt;

</description>
        <pubDate>Wed, 28 Aug 2024 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/ai-homelab/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/ai-homelab/</guid>
        
        
        <category>blog</category>
        
        <category>homelab</category>
        
      </item>
    
      <item>
        <title>Using a Raspberry Pi as a home network Bastion Host</title>
        <description>&lt;p&gt;I’ve been at Teleport for a bit now and unlike the previous developer companies I’ve worked at. Teleports Community Edition provides something useful for my home setup. In this post I’ll outline why I converted an old Raspberry Pi to be a home bastion, and how you can do the same.&lt;/p&gt;

&lt;h4 id=&quot;preview&quot;&gt;Preview&lt;/h4&gt;

&lt;iframe width=&quot;560&quot; height=&quot;315&quot; src=&quot;https://www.youtube.com/embed/Yg25aelzCnA&quot; title=&quot;YouTube video player&quot; frameborder=&quot;0&quot; allow=&quot;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture&quot; allowfullscreen=&quot;&quot;&gt;&lt;/iframe&gt;

&lt;h4 id=&quot;why-setup-a-home-bastion&quot;&gt;Why setup a home bastion?&lt;/h4&gt;
&lt;p&gt;Firstly, for the uninitiated a Bastion host is a special-purpose computer designed to provides access to a network and it’s been specifically designed to withstand attacks. A Bastion lives inside of a network vs a Jumphost and once setup it provides a central place to access machines inside that network.&lt;/p&gt;

&lt;p&gt;But why have one at home? Even if you don’t have aren’t a &lt;a href=&quot;https://www.reddit.com/r/homelab/&quot;&gt;/r/homelab&lt;/a&gt; enthusiast. I’ve found myself having multiple computers that I needed to access, after converting my Intel NUC to a K8s cluster, a few Pi Projects and building a home Linux/Windows Workstation.&lt;/p&gt;

&lt;p&gt;Things I’m currently accessing using Teleport&lt;/p&gt;
&lt;ul&gt;
  &lt;li&gt;“Servers” ~ I’ve two home servers. One is an Intel NUC and another home made 2U test rig. These run a range of things, but mainly for testing new tech and experimenting with new Crypto Testnets and sometimes a CS:GO Server.&lt;/li&gt;
  &lt;li&gt;“IoT Devices” ~ I’m always working on some kind of IoT Project. These are mostly ARM based, and having an easy way to access these devices and keep a journal of what I did is very helpful.&lt;/li&gt;
  &lt;li&gt;“Applications &amp;amp; Control Panels”
    &lt;ul&gt;
      &lt;li&gt;&lt;a href=&quot;https://www.ui.com/download-software/&quot;&gt;UniFi OS&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;&lt;a href=&quot;https://homebridge.io/&quot;&gt;Homebridge&lt;/a&gt;&lt;/li&gt;
      &lt;li&gt;AT&amp;amp;T Router UI&lt;/li&gt;
    &lt;/ul&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;why-use-teleport-for-this&quot;&gt;Why use Teleport for this?&lt;/h4&gt;
&lt;p&gt;Full Disclaimer: Teleport pays my bills, so I’m a little biased to say you should run be running Teleport.&lt;/p&gt;

&lt;p&gt;Before I dive deep into the why, these are some other options:&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Plain old SSH - For an internal network, you could use SSH Keys but this lacks external access and lacks access internal apps.&lt;/li&gt;
  &lt;li&gt;https://tailscale.com/ - A good solution for a single user&lt;/li&gt;
  &lt;li&gt;https://www.balena.io/cloud - More IoT focuses and limited to 10 devices.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Benefits of Teleport&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Teleport UI / and console to quickly interact with devices.&lt;/li&gt;
  &lt;li&gt;Available Externally via a Trusted Cluster.&lt;/li&gt;
  &lt;li&gt;Can provide secure access to any local or cloud server.&lt;/li&gt;
  &lt;li&gt;Github SSO Team Integration.&lt;/li&gt;
  &lt;li&gt;Free! No limit on users or nodes.&lt;/li&gt;
  &lt;li&gt;ARM Support, for both nodes and Teleport’s brain, the auth and proxy. It’s cheap to run on a Raspberry Pi.&lt;/li&gt;
&lt;/ol&gt;

&lt;h4 id=&quot;security&quot;&gt;Security&lt;/h4&gt;

&lt;p&gt;This post has been in my back log for a while as a few things didn’t feel quite right about the setup. There have been a few incidents of late in which &lt;a href=&quot;https://www.zdnet.com/article/nasa-hacked-because-of-unauthorized-raspberry-pi-connected-to-its-network/&quot;&gt;Raspberry Pis have been a gateway to sensitive networks&lt;/a&gt; and &lt;a href=&quot;https://darknetdiaries.com/transcript/86/&quot;&gt;patchy publicly available software as a gateway into corporate networks&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Lastly, after the &lt;a href=&quot;https://krebsonsecurity.com/2021/03/whistleblower-ubiquiti-breach-catastrophic/&quot;&gt;Ubiquiti breach&lt;/a&gt;, I really wanted to limit IoT’s inbound access and I’ve increasing been removing devices to dial back home and I’ve been putting IoT devices on a dedicated VLAN.  This might be overkill but I hope to explore the Pros of this in a future post.&lt;/p&gt;

&lt;h3 id=&quot;hardware&quot;&gt;Hardware&lt;/h3&gt;

&lt;p&gt;For this build, I’m using:&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://amzn.to/39NhCbU&quot;&gt;Raspberry Pi 3 Model B - $35&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://amzn.to/3gm9j9n&quot;&gt;Enokay Raspberry Pi 3 Model B B+ Case(Black) - $6.99&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Any SD Card. I’m currently using a 4GB SD but would recommend a larger 32 or 64GB card to store sessions.&lt;/li&gt;
  &lt;li&gt;Wired Ethernet - Not required by it makes networking reliability easier.&lt;/li&gt;
&lt;/ul&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2021/teleport-pi-400-8c13f286f.webp 400w, /assets/images/generated/reboot_images/blog/2021/teleport-pi-600-8c13f286f.webp 600w, /assets/images/generated/reboot_images/blog/2021/teleport-pi-800-8c13f286f.webp 800w, /assets/images/generated/reboot_images/blog/2021/teleport-pi-1000-8c13f286f.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2021/teleport-pi-400-8c13f286f.jpg 400w, /assets/images/generated/reboot_images/blog/2021/teleport-pi-600-8c13f286f.jpg 600w, /assets/images/generated/reboot_images/blog/2021/teleport-pi-800-8c13f286f.jpg 800w, /assets/images/generated/reboot_images/blog/2021/teleport-pi-1000-8c13f286f.jpg 1000w&quot; type=&quot;image/jpeg&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2021/teleport-pi-800-8c13f286f.jpg&quot; alt=&quot;A Raspberry Pi and small networking devices mounted on a plywood wall with ethernet and USB cables&quot; width=&quot;1567&quot; height=&quot;1006&quot; /&gt;&lt;/picture&gt;

&lt;h4 id=&quot;headless-raspberry-pi-setup&quot;&gt;Headless Raspberry Pi Setup&lt;/h4&gt;

&lt;p&gt;There are many great Raspberry Pi setup tutorials, these are mostly beginner focused and required a monitor. Below I’ve bootstrapped my Pi in a headless fashion. Setting up headless means I only need to download the OS, change some config files, plug in and it’ll be all setup.&lt;/p&gt;

&lt;p&gt;The stages of setup are.&lt;/p&gt;

&lt;ol&gt;
  &lt;li&gt;Download Operating System. For this setup I’m using Ubuntu Server for Arm 20.04 LTS as it offers easier headless bootstrapping options.&lt;/li&gt;
  &lt;li&gt;Flash SD Card using &lt;a href=&quot;https://www.balena.io/etcher/&quot;&gt;Balena Etcher&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Edit &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;cloud-config&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;network-config&lt;/code&gt; files, examples below.&lt;/li&gt;
  &lt;li&gt;Plug in / Install updates&lt;/li&gt;
  &lt;li&gt;Install &amp;amp; Setup Teleport&lt;/li&gt;
  &lt;li&gt;Bonus: Using Teleport to Wake on Lan another machine on the local network.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;1. Downloading Ubuntu Server for Arm 20.04 LTS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Download the latest &lt;a href=&quot;https://ubuntu.com/download/server/arm&quot;&gt;Ubuntu 20.04 ARM binary&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;2.Burn Image&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The next step is to burn the image to a MicroSD card. My preferred tool is &lt;a href=&quot;https://www.balena.io/etcher/&quot;&gt;balenaEtcher&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;3. Edit &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;cloud-config&lt;/code&gt; and &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;network-config&lt;/code&gt; files&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Ubuntu provides &lt;a href=&quot;https://cloudinit.readthedocs.io/en/latest/index.html&quot;&gt;cloud-init&lt;/a&gt; for instances to be easily setup on boot. These files should be placed onto the SD card after the image is burnt.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;cloud-config&lt;/strong&gt;&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-yaml&quot; data-lang=&quot;yaml&quot;&gt;&lt;span class=&quot;c1&quot;&gt;# Disable password authentication with the SSH daemon&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;ssh_pwauth&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;false&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Created a default pi user and I&apos;ve added my SSH key.&lt;/span&gt;
&lt;span class=&quot;c1&quot;&gt;# Replace the SSH key with yours.&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;users&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
&lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;pi&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;primary_group&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;pi&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;groups&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;users&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;system&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;lock_passwd&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;false&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;sudo&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;pi&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;s1&quot;&gt;&apos;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;ALL=(ALL)&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;NOPASSWD:ALL&apos;&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;]&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;groups&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;sudo&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;ssh_authorized_keys&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;ssh-ed25519 EXAMPLE...AccSMFqzUJ4VSjuZD benarent@ben-mbp&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;shell&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;/bin/bash&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Basic Setup&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;runcmd&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;sed -i -e &apos;/^PermitRootLogin/s/^.*$/PermitRootLogin no/&apos; /etc/ssh/sshd_config&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;sed -i -e &apos;$aAllowUsers pi&apos; /etc/ssh/sshd_config&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;restart ssh&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;mkdir&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;-p&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;/run/teleport&apos;&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;cd&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;/run/teleport&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;wget&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;-O&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;https://get.gravitational.com/teleport-v6.2.5-linux-arm64-bin.tar.gz&apos;&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;tar&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;-xvf&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;https://get.gravitational.com/teleport-v6.2.5-linux-arm64-bin.tar.gz&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;  &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;-C&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;/run/teleport/&apos;&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;sudo&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;~/run/teleport/install&apos;&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s1&quot;&gt;&apos;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;systemctl&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;enable&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt; &lt;/span&gt;&lt;span class=&quot;s&quot;&gt;teleport.service&apos;&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;## Update apt database and upgrade packages on first boot&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;package_update&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;package_upgrade&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;

&lt;span class=&quot;c1&quot;&gt;# Setups Hostname to teleport-home&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;hostname&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;teleport-home&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;&lt;strong&gt;Optional: network-config&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;If you plan on using Wifi, setting network config makes it easy to get the pi on the network.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-yaml&quot; data-lang=&quot;yaml&quot;&gt;&lt;span class=&quot;c1&quot;&gt;# This file contains a netplan-compatible configuration which cloud-init&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;version&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;m&quot;&gt;2&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;ethernets&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;eth0&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;dhcp4&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;optional&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;wifis&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;wlan0&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;dhcp4&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;optional&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;access-points&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
      &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;WIFI-NAME&quot;&lt;/span&gt;&lt;span class=&quot;err&quot;&gt;:&lt;/span&gt;
          &lt;span class=&quot;na&quot;&gt;password&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;***&quot;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;&lt;strong&gt;4. Download MkCert and Install to create local CA&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Teleport makes it super easy to obtain certificates for publicly accessible Teleport Proxies, but since I plan to run Teleport locally, I’m going to need a local CA. I’m going to be using &lt;a href=&quot;https://github.com/FiloSottile/mkcert&quot;&gt;mkcert&lt;/a&gt; to create the cert.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;apt &lt;span class=&quot;nb&quot;&gt;install &lt;/span&gt;libnss3-tools

&lt;span class=&quot;nb&quot;&gt;export &lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;VER&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;&lt;span class=&quot;s2&quot;&gt;&quot;v1.3.0&quot;&lt;/span&gt;
wget &lt;span class=&quot;nt&quot;&gt;-O&lt;/span&gt; mkcert https://github.com/FiloSottile/mkcert/releases/download/&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;VER&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;/mkcert-&lt;span class=&quot;k&quot;&gt;${&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;VER&lt;/span&gt;&lt;span class=&quot;k&quot;&gt;}&lt;/span&gt;&lt;span class=&quot;nt&quot;&gt;-darwin-amd64&lt;/span&gt;

&lt;span class=&quot;nb&quot;&gt;chmod&lt;/span&gt; +x mkcert
&lt;span class=&quot;nb&quot;&gt;sudo mv &lt;/span&gt;mkcert /usr/local/bin&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;&lt;strong&gt;5. Setting up Avahi for mDNS&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Avahi is a free zero-configuration networking implementation, including a system for multicast DNS/DNS-SD service discovery. Once setup, it’ll let me access the Pi via ‘teleport-home.local’ instead of using the IP.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;c&quot;&gt;# Install avahi&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;apt-get &lt;span class=&quot;nb&quot;&gt;install &lt;/span&gt;avahi-daemon
&lt;span class=&quot;c&quot;&gt;# Check that avahi is running using Systemd&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;sudo &lt;/span&gt;systemctl status avahi-daemon.service&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;h4 id=&quot;6-create-private-ca-for-httpsteleport-homelocal&quot;&gt;6. Create Private CA for https://teleport-home.local&lt;/h4&gt;

&lt;p&gt;I’ll create the Certificate Authority (CA) on the Pi using MkCert and I’ll then export the CA root to be installed on Mac.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;mkcert teleport-home.local &lt;span class=&quot;s2&quot;&gt;&quot;*.teleport-home.local&quot;&lt;/span&gt; 
&lt;span class=&quot;c&quot;&gt;# teleport-home.local+1-key.pem  teleport-home.local+1.pem&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;Export the CA Root&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;mkcert &lt;span class=&quot;nt&quot;&gt;-CAROOT&lt;/span&gt;
&lt;span class=&quot;c&quot;&gt;#/home/ubuntu/.local/share/mkcert&lt;/span&gt;

&lt;span class=&quot;c&quot;&gt;# Concatenate root CA. This is saved locally and added to Mac Store.&lt;/span&gt;
&lt;span class=&quot;nb&quot;&gt;cat&lt;/span&gt; /home/ubuntu/.local/share/mkcert/rootCA.pem&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;After I’ve obtained the root CA, I’ve saved the file locally. Once saved all you need to do is double click and check the KeyChain to see if the Root CA has been installed.&lt;/p&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2021/teleport-ca-400-db68eb444.webp 400w, /assets/images/generated/reboot_images/blog/2021/teleport-ca-600-db68eb444.webp 600w, /assets/images/generated/reboot_images/blog/2021/teleport-ca-800-db68eb444.webp 800w, /assets/images/generated/reboot_images/blog/2021/teleport-ca-1000-db68eb444.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2021/teleport-ca-400-db68eb444.png 400w, /assets/images/generated/reboot_images/blog/2021/teleport-ca-600-db68eb444.png 600w, /assets/images/generated/reboot_images/blog/2021/teleport-ca-800-db68eb444.png 800w, /assets/images/generated/reboot_images/blog/2021/teleport-ca-1000-db68eb444.png 1000w&quot; type=&quot;image/png&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2021/teleport-ca-800-db68eb444.png&quot; alt=&quot;macOS Keychain Access showing the mkcert root@teleport-home certificate authority trusted for all users&quot; width=&quot;1826&quot; height=&quot;1138&quot; /&gt;&lt;/picture&gt;

&lt;h4 id=&quot;setup--start-teleport&quot;&gt;Setup &amp;amp; Start Teleport&lt;/h4&gt;

&lt;p&gt;To start you’ll need to SSH into the Pi and run &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;teleport configure&lt;/code&gt;.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-bash&quot; data-lang=&quot;bash&quot;&gt;&lt;span class=&quot;c&quot;&gt;# SSH into the PI and run&lt;/span&gt;
teleport configure &lt;span class=&quot;nt&quot;&gt;--cluster-name&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;pi-local &lt;span class=&quot;nt&quot;&gt;-o&lt;/span&gt; file&lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;This will mostly setup what you need, but you’ll  need to add the https_keypairs which you created using MkCert.  I’ve also gone ahead and enabled a few app services.&lt;/p&gt;

&lt;figure class=&quot;highlight&quot;&gt;&lt;pre&gt;&lt;code class=&quot;language-yaml&quot; data-lang=&quot;yaml&quot;&gt;&lt;span class=&quot;na&quot;&gt;teleport&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;nodename&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;teleport-home&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;data_dir&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;/var/lib/teleport&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;output&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;stderr&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;severity&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;INFO&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;ca_pin&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;&quot;&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;auth_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;yes&quot;&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;listen_addr&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;0.0.0.0:3025&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;cluster_name&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;teleport-home&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;ssh_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;yes&quot;&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;labels&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;env&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;example&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;commands&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;hostname&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;command&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;pi&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;hostname&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;]&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;period&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;1m0s&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;proxy_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;yes&quot;&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;listen_addr&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;0.0.0.0:3023&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;web_listen_addr&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;:443&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;public_addr&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;teleport-home.local:443&lt;/span&gt;
  &lt;span class=&quot;c1&quot;&gt;# HTTPS Keypairs are created by MkCert&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;https_keypairs&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;key_file&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;/var/lib/teleport/teleport-home.local+4-key.pem&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;cert_file&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;/var/lib/teleport/teleport-home.local+4.pem&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;app_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;yes&quot;&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;debug_app&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;apps&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;unifi&quot;&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;uri&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;https://192.168.0.1&quot;&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;public_addr&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;unifi.teleport-home.local&quot;&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;insecure_skip_verify&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;kc&quot;&gt;true&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;redirect&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;192.168.0.1&quot;&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;homebridge&quot;&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;uri&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;http://homebridge.local&quot;&lt;/span&gt; &lt;/code&gt;&lt;/pre&gt;&lt;/figure&gt;

&lt;p&gt;Save this file and start Teleport. You can easily check things are working with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;teleport start -d&lt;/code&gt;, if this works for you skip onto using systemd &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;systemctl start teleport&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Now teleport is running, I’ll need to create a new user.&lt;/p&gt;

&lt;div class=&quot;language-bash highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;tctl &lt;span class=&quot;nb&quot;&gt;users &lt;/span&gt;add teleport-admin &lt;span class=&quot;nt&quot;&gt;--roles&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;editor,access,auditor &lt;span class=&quot;nt&quot;&gt;--logins&lt;/span&gt;&lt;span class=&quot;o&quot;&gt;=&lt;/span&gt;root,ubuntu,ec2-user
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h4 id=&quot;use-teleport&quot;&gt;Use Teleport&lt;/h4&gt;

&lt;p&gt;On my local machine, I now able to access Teleport by visiting &lt;a href=&quot;https://teleport-home.local&quot;&gt;https://teleport-home.local&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I’m now able to access the Applications and access any nodes I add. If I ever want to add a new add, I’ll use &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;tctl nodes add&lt;/code&gt; to create a join token.&lt;/p&gt;

&lt;p&gt;When adding new nodes, I use a config file as this allows for easier settings of labels etc.&lt;/p&gt;

&lt;div class=&quot;language-yaml highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;&lt;span class=&quot;c1&quot;&gt;# /etc/teleport.yaml&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;teleport&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;nodename&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;duke&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;data_dir&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;/var/lib/teleport&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;log&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;output&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;stderr&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;severity&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;INFO&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;auth_token&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;xx&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;auth_servers&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
      &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;192.168.0.64:3025&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;auth_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;no&quot;&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;proxy_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;no&quot;&lt;/span&gt;
&lt;span class=&quot;na&quot;&gt;ssh_service&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;enabled&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s2&quot;&gt;&quot;&lt;/span&gt;&lt;span class=&quot;s&quot;&gt;yes&quot;&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;labels&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;type&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;2u&lt;/span&gt;
  &lt;span class=&quot;na&quot;&gt;commands&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt;
  &lt;span class=&quot;pi&quot;&gt;-&lt;/span&gt; &lt;span class=&quot;na&quot;&gt;name&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;hostname&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;command&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;pi&quot;&gt;[&lt;/span&gt;&lt;span class=&quot;nv&quot;&gt;hostname&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;]&lt;/span&gt;
    &lt;span class=&quot;na&quot;&gt;period&lt;/span&gt;&lt;span class=&quot;pi&quot;&gt;:&lt;/span&gt; &lt;span class=&quot;s&quot;&gt;1m0s&lt;/span&gt;
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;h4 id=&quot;next-steps&quot;&gt;Next Steps.&lt;/h4&gt;

&lt;p&gt;I’ve now a solid base that’ll provide easy access to my internal dashboards and an easy way to keep a record of what I’ve done on what host. These are my next steps.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Add my microK8s&lt;/li&gt;
  &lt;li&gt;Add a Trusted Cluster to provide secure remote access.&lt;/li&gt;
  &lt;li&gt;Enrol my other nodes and pis into the cluster&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Please leave a comment if you liked this and if you think I should add anything else.&lt;/p&gt;
</description>
        <pubDate>Sun, 20 Jun 2021 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/iot/ssh-home-bastion-with-RPi/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/iot/ssh-home-bastion-with-RPi/</guid>
        
        
        <category>blog</category>
        
        <category>iot</category>
        
      </item>
    
      <item>
        <title>Gravitational</title>
        <description>&lt;p&gt;2019 is shaping up to be a busy year.&lt;/p&gt;

&lt;p&gt;After my last post, I had a few meetings and ended out meeting the &lt;a href=&quot;https://gravitational.com/&quot;&gt;Gravitational&lt;/a&gt; team to see what they’ve been up. I have been following the founders and the growth of Gravitational since they left Rackspace to start Gravitational in 2015.&lt;/p&gt;

&lt;p&gt;Gravitational helps companies securely deliver applications into any environment.  Gravity provides a bubble of consistency for delivering applications. Teleport provides privileged access management for cloud-native infrastructure that doesn’t get in the way. More on that below.&lt;/p&gt;

&lt;p&gt;These products solve two problems I’ve encountered in the past. While running &lt;a href=&quot;https://airbrake.io&quot;&gt;Airbrake&lt;/a&gt;, I encountered many of the issues related to deploying software securely on-prem for customers. &lt;a href=&quot;https://gravitational.com/gravity/&quot;&gt;Gravity&lt;/a&gt; is a vastly more scalable and secure version of the various &lt;a href=&quot;https://www.wired.co.uk/article/heath-robinson-deserves-a-museum&quot;&gt;Heath Robinson&lt;/a&gt; solutions we shipped circa 2015. While at SolarWinds, I observed the deployment and scaling issues of disrupted software on-premise.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://gravitational.com/teleport/&quot;&gt;Teleport&lt;/a&gt; helps customers securely access servers/machines.  Coming from almost a first-principles approach to security and access, Teleports connects to customers SSO providers to help them provide access to servers, by replacing public/private key with short lived SSH certificates.&lt;/p&gt;

&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-400-946e3fd70.webp 400w, /assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-600-946e3fd70.webp 600w, /assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-800-946e3fd70.webp 800w, /assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-1000-946e3fd70.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-400-946e3fd70.jpg 400w, /assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-600-946e3fd70.jpg 600w, /assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-800-946e3fd70.jpg 800w, /assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-1000-946e3fd70.jpg 1000w&quot; type=&quot;image/jpeg&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2019/blood-moon-2018-jan-800-946e3fd70.jpg&quot; alt=&quot;A tall illuminated transmission tower at night with a blood moon visible in the starry sky, silhouetted figures in foreground&quot; width=&quot;1200&quot; height=&quot;630&quot; /&gt;&lt;/picture&gt;

&lt;p&gt;Blood Moon in San Francisco at Sutro Tower taken by myself on January 2018.&lt;/p&gt;

&lt;h4 id=&quot;oss--open-core&quot;&gt;OSS &amp;amp; Open Core&lt;/h4&gt;
&lt;p&gt;Both Gravity and Teleport are open core, this has a range of business advantages. and we are starting to see the growth of &lt;a href=&quot;https://gravitational.com/blog/open-core-vs-saas-intro/&quot;&gt;Open Core business models&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;While running RedisToGo, I enjoyed working with the OSS community, running Redis SF meetup and RedisConfNano.  The community and open nature of events often meant many more customers could use the software and in new and exciting ways.&lt;/p&gt;

&lt;p&gt;I’m excited to be building in the open again and the possibilities of doing Product Management in the open.&lt;/p&gt;

&lt;h4 id=&quot;simplicity-from-the-complexity&quot;&gt;Simplicity from the complexity&lt;/h4&gt;
&lt;p&gt;As I’ve been ramping up, I’ve had a chance to dive deeper in Kubernetes. Over the past 5 years, Kubernetes has become the defacto tooling for managing machines, clusters and containerized application. While at a high level, the concepts are simple, the orchestration and management can seem very simple, but in reality, &lt;a href=&quot;https://k8s.af/&quot;&gt;many things that can go wrong&lt;/a&gt;. Gravity helps  streamline running Kubernetes for you, by providing a &lt;a href=&quot;https://gravitational.com/gravity/docs/cluster/#cluster-status&quot;&gt;bunch of tooling&lt;/a&gt; to make debugging, monitoring and managing a cluster simpler.&lt;/p&gt;

&lt;h4 id=&quot;lets-get-coffee&quot;&gt;Let’s get coffee.&lt;/h4&gt;
&lt;p&gt;I’m excited to be taking on this role and to share what we have to the broader DevTools community. If you think Gravitational products sound interesting to you, or are also looking for your next opportunity.&lt;/p&gt;

&lt;p&gt;Please &lt;a href=&quot;mailto:ben@gravitational.com&quot;&gt;drop me a mail&lt;/a&gt; and we’ll grab a coffee.&lt;/p&gt;
</description>
        <pubDate>Thu, 30 May 2019 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/me/joining-gravitational/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/me/joining-gravitational/</guid>
        
        
        <category>blog</category>
        
        <category>me</category>
        
      </item>
    
      <item>
        <title>2019 Update</title>
        <description>&lt;picture&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-400-6f5f78aad.webp 400w, /assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-600-6f5f78aad.webp 600w, /assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-800-6f5f78aad.webp 800w, /assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-1000-6f5f78aad.webp 1000w&quot; type=&quot;image/webp&quot; /&gt;&lt;source srcset=&quot;/assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-400-6f5f78aad.jpg 400w, /assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-600-6f5f78aad.jpg 600w, /assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-800-6f5f78aad.jpg 800w, /assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-1000-6f5f78aad.jpg 1000w&quot; type=&quot;image/jpeg&quot; /&gt;&lt;img loading=&quot;lazy&quot; src=&quot;/assets/images/generated/reboot_images/blog/2019/salmon_swimming_up_stream-800-6f5f78aad.jpg&quot; alt=&quot;A single salmon leaping against churning white water at the base of a rocky waterfall&quot; width=&quot;5184&quot; height=&quot;3456&quot; /&gt;&lt;/picture&gt;

&lt;p&gt;As always, it’s been a while since I’ve updated my blog. I want to say I’ll be doing this more often, but historical precedent says otherwise.&lt;/p&gt;

&lt;p&gt;I’ve been slowly making updates to the rest of the site.  Pruning and cleaning up my portfolio to reflect the SaaS projects I’ve been working on the last 6 years. Due to many factors, I’ve been unable to keep the site up-to-date with public updates, but I’ve lots of fun stories I can tell 1-on-1.&lt;/p&gt;

&lt;h4 id=&quot;-leaving-solarwinds-cloud&quot;&gt;👋 Leaving Solarwinds Cloud&lt;/h4&gt;
&lt;p&gt;I left Solarwinds Cloud at the end of last year. I had a great time and would like to thank the Librato founders &lt;a href=&quot;https://twitter.com/josephrusci&quot;&gt;Joe&lt;/a&gt;, &lt;a href=&quot;https://twitter.com/danstondin&quot;&gt;Dan&lt;/a&gt; &amp;amp; &lt;a href=&quot;https://twitter.com/mheffner&quot;&gt;Mike&lt;/a&gt; to bringing me on the adventure. It was a pleasure to work with the Traceview team to work together to launch AppOptics at the end of 2017.&lt;/p&gt;

&lt;h4 id=&quot;️-the-last-few-months&quot;&gt;🏔️ The Last Few Months&lt;/h4&gt;
&lt;p&gt;After spending the holidays with my family and friends. I was able to spend some time in the beautiful California nature and to enjoy the bumper snow this season.&lt;/p&gt;

&lt;p&gt;Along with a healthy dose of fresh air. I’ve had the opportunity to reconnect with a group of inspiring devs, designs and entrepreneurs.&lt;/p&gt;

&lt;p&gt;Shoutout to all these incredible people I’ve had the chance to catch up with over the last few months.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/amos_barreto&quot;&gt;@amos_barreto&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/carydunn&quot;&gt;@carydunn&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/chadarimura&quot;&gt;@chadarimura&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/dylst&quot;&gt;@dylst&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/eoghan&quot;&gt;@eoghan&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/EamonLeonard&quot;&gt;@EamonLeonard&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/gr2m&quot;&gt;@gr2m&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/johnsheehan&quot;&gt;@johnsheehan&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://xenon.io/index.html&quot;&gt;Xeon Partners Team&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/seanpfee&quot;&gt;@seanpfee&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/nwekwerth&quot;&gt;@nwekwerth&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/stu_chaney&quot;&gt;@stu_chaney&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/usiegj00&quot;&gt;@usiegj00&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/itolmach&quot;&gt;@itolmach&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;-the-future&quot;&gt;🔮 The Future&lt;/h4&gt;
&lt;p&gt;I’ve had some time to explore a few ideas that have the potential to become something more. The ideas are still in the prodromal gloop stage, but I hope to be sharing the results of my early market testing soon.&lt;/p&gt;

&lt;p&gt;I have been spending some time on the interview circuit, which could be a blog post in itself. I’m still actively interviewing for roles that cross Product &amp;amp; Design. Referrals welcome.&lt;/p&gt;

&lt;p&gt;Lastly, I’ve been applying my trade for B2B SaaS Positioning, Signup, conversion funnel and post-conversion. If you’re looking for fresh eyes on your end-to-end SaaS signup process, &lt;a href=&quot;mailto:ben@arent.com&quot;&gt;get in touch&lt;/a&gt;.&lt;/p&gt;
</description>
        <pubDate>Wed, 13 Mar 2019 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/me/2019-update/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/me/2019-update/</guid>
        
        
        <category>blog</category>
        
        <category>me</category>
        
      </item>
    
      <item>
        <title>Writing about a new product feature</title>
        <description>&lt;p&gt;I was recently asked by my friends at FilePicker to give some advice on how to write an archetypal blog post for new product features. This is a common question I get asked, so I’m going to outline best practices in 2015, and then use these to scope a blog post for FilePicker.&lt;/p&gt;

&lt;h3 id=&quot;best-practices&quot;&gt;Best Practices&lt;/h3&gt;

&lt;h4 id=&quot;blog-posts&quot;&gt;Blog Posts&lt;/h4&gt;

&lt;p&gt;A blog post is a useful way to communicate a new product and feature release. Using a blog makes it easier for the whole team to quickly post and interact with customers. It allows for quick and iterative announcements that can be synced up with marketing at a later date to update and create appropriate updates to the marketing site.&lt;/p&gt;

&lt;p&gt;Examples of good blog posts introducing features.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;https://newsroom.fb.com/news/2015/06/introducing-moments/&quot;&gt;Facebook Moments&lt;/a&gt; and a small iteration to sending a location from within &lt;a href=&quot;https://newsroom.fb.com/news/2015/06/a-new-way-to-send-a-location-in-messenger/&quot;&gt;Facebook messenger&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;http://blog.mailgun.com/product-update-dashboard-ui-improvements/&quot;&gt;Dashboard improvements for Mailgun&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;&lt;a href=&quot;http://blog.mailgun.com/product-update-dashboard-ui-improvements/&quot;&gt;UI update for Airbrake&lt;/a&gt;, with &lt;a href=&quot;http://cl.ly/image/0e2s030x1h1X&quot;&gt;Animated GIF screenshots&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;docs&quot;&gt;Docs&lt;/h4&gt;

&lt;p&gt;Clear, comprehensive and up to date documentation is extremely important for developer tools. Along with an update to a blog a more technical duplication of the content should be copied and stored in documentation. For SDKs and developer tools it’s good to keep a &lt;a href=&quot;http://keepachangelog.com/&quot;&gt;Changelog&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Examples of good documentation.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Stripe supporting Bitcoin. &lt;a href=&quot;https://stripe.com/blog/bitcoin-the-stripe-perspective&quot;&gt;Blog post&lt;/a&gt; vs &lt;a href=&quot;https://stripe.com/docs/guides/bitcoin&quot;&gt;Docs&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;marketing-site&quot;&gt;Marketing Site&lt;/h4&gt;

&lt;p&gt;For larger feature announcements it is best practice to update the SaaS marketing site. Depending on the size of the feature, this could be a landing page specific to the feature or a comprehensive overview of the whole marketing site. This may mean expanding the information architecture of your marketing site.&lt;/p&gt;

&lt;h4 id=&quot;newsletter&quot;&gt;Newsletter&lt;/h4&gt;

&lt;p&gt;A newsletter is another good touchpoint to inform customers of an update. If it’s a large update you can make it all &lt;a href=&quot;http://us2.campaign-archive2.com/?u=fc15f54857f907672d533e7e2&amp;amp;id=28747bf6e6&quot;&gt;about the upgrade&lt;/a&gt;, or as in this version &lt;a href=&quot;http://us2.campaign-archive2.com/?u=fc15f54857f907672d533e7e2&amp;amp;id=d6bbd3cadc&quot;&gt;we’ve limited updates&lt;/a&gt; on the new features.&lt;/p&gt;

&lt;h4 id=&quot;in-app&quot;&gt;In-App&lt;/h4&gt;

&lt;p&gt;A problem with Blog posts, Docs and Marketing is that many long time customers don’t visit these sites on a regular basis. Even a newsletter may not reach all you active users.  For new users a well defined on-boarding process should be defined but for current customers I would recommend slowly informing customers of feature updates. This can be done by a in-app message on a specific URL, see this &lt;a href=&quot;http://docs.intercom.io/Intercom-for-customer-communication/what-messages-should-i-send#announce-new-features&quot;&gt;intercom post on best &lt;/a&gt;&lt;a href=&quot;http://www.google.com/url?q=http%3A%2F%2Fdocs.intercom.io%2FIntercom-for-customer-communication%2Fwhat-messages-should-i-send%23announce-new-features&amp;amp;sa=D&amp;amp;sntz=1&amp;amp;usg=AFQjCNGYpks61EGCHxJYis8gq317-XvtZA&quot;&gt;practices&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;It is also becoming common to add in an activity feed of &lt;a href=&quot;http://cl.ly/image/1Q0Y012W0M24&quot;&gt;new features&lt;/a&gt; and Wells Fargo even shows a &lt;a href=&quot;http://cl.ly/image/3I1j2l3Y1A1M&quot;&gt;coming soon section&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Applying this to FilePicker&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Filepicker asked me for the archetypal blog post for a new document conversion feature. I had little knowledge of Filepicker but after doing some research I used the below framework to help with the product announcement. Lucky Filepicker had already created some &lt;a href=&quot;https://www.filepicker.com/documentation/file_processing/document_conversion/document&quot;&gt;great documentation&lt;/a&gt;&lt;/p&gt;

&lt;h4 id=&quot;what&quot;&gt;What?&lt;/h4&gt;

&lt;p&gt;Filepicker offers a service to convert existing files to another format. A comprehensive list is the documentation. An example is a PDF converted to jpg, odp, ods, odt, png, and txt. Filepicker provides a very simple syntax to convert files a customer simply need to add a format string and the output is created on the fly.&lt;/p&gt;

&lt;h4 id=&quot;why&quot;&gt;Why?&lt;/h4&gt;

&lt;p&gt;This product feature is useful as it allows for document conversion on the fly and in the cloud. There is no need to download the file open the file editor of choice and then save the file. This does it for you. Though this doesn’t why you would want to do this.  Here are few ideas I had for this feature&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Convert PDFs to TXT for easier indexing and searching.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Creating PNG or JPEG still images for documents so a preview can be embedded without having to download a .doc which can’t be viewed in a browser.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Creating HTML pages from a simple TXT files, useful for easier sharing of older pure .txt files.&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;for-who&quot;&gt;For Who?&lt;/h4&gt;

&lt;p&gt;File Picker is a B2B service and unlike &lt;a href=&quot;http://cl.ly/image/2t3g3W0A3j3R&quot;&gt;filepickers UI &lt;/a&gt;this service is unlikely to have a customer facing UI. I would expect that it would be used in the background on-demand by using link modifiers. For example, Download this doc as Microsoft Word or OpenOffice.&lt;/p&gt;

&lt;h4 id=&quot;benefits&quot;&gt;Benefits?&lt;/h4&gt;

&lt;p&gt;The main benefit of this feature is that it provides a range of options that could either be done on-demand or could be used in a batch to create another format for either machine reading or another purpose such as defined above.&lt;/p&gt;

&lt;h4 id=&quot;where-to-post-the-updates&quot;&gt;Where to post the updates?&lt;/h4&gt;

&lt;p&gt;Filepicker current has &lt;a href=&quot;https://www.filepicker.com/blog&quot;&gt;Blog&lt;/a&gt;, &lt;a href=&quot;https://www.filepicker.com/documentation/file_processing/document_conversion/document&quot;&gt;Documentation&lt;/a&gt;, marketing site and an &lt;a href=&quot;http://cl.ly/image/1b0b311v3K0J&quot;&gt;in-app dashboard&lt;/a&gt; . They have already posted the documentation but it’s hard to for both new and existing users to get an overview of the feature.&lt;/p&gt;

&lt;p&gt;Another way to increase discoverability of this feature would be enable this option from the control panel to show &lt;a href=&quot;http://cl.ly/image/0k0B1W1W0c10&quot;&gt;an example of the API in use&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;The todo list for Filepicker would be&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Create docs&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Product specific blog post&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Provide subtle indication in the UI that the feature is available&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Provide product stats on &lt;a href=&quot;http://cl.ly/image/1b0b311v3K0J&quot;&gt;feature usage to customer&lt;/a&gt;&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Another area Filepicker could focus is guest blogging for 3rd party services. Since file picker integrates with multiple services it would be good to cross post. For example they recently launched Google Cloud integration for storing files, and it would be good to write a short blog post on &lt;a href=&quot;http://googlecloudplatform.blogspot.com/&quot;&gt;Google Cloud blog&lt;/a&gt; as it’s guest post friendly. Especially since Filepicker supports both Picasa and Google Drive.&lt;/p&gt;

&lt;p&gt;A sample blog post for this new feature would be.&lt;/p&gt;

&lt;hr /&gt;

&lt;h3 id=&quot;simple-online-document-conversion-for-filepickerio&quot;&gt;Simple online document conversion for Filepicker.io&lt;/h3&gt;

&lt;p&gt;Filepicker has added a vast improvement to its processing function. We now offer a range of documentation conversion options for all major file formats. Do you need to create jpeg previews of PDF? Make OpenOffice files more accessible? Filepicker makes it simple with a new document conversion file processing option.  This feature is only available to Startup and above plans.&lt;/p&gt;

&lt;h4 id=&quot;how-it-works&quot;&gt;How it works?&lt;/h4&gt;

&lt;p&gt;Once a file is uploaded and stored in Filepicker we provide a Syntax to convert a document into a over 8 different formats. The full range of possible conversions types on our &lt;a href=&quot;https://www.google.com/url?q=https%3A%2F%2Fwww.filepicker.com%2Fdocumentation%2Ffile_processing%2Fdocument_conversion%2Fdocument&amp;amp;sa=D&amp;amp;sntz=1&amp;amp;usg=AFQjCNEMa3s07sVDptjQal4y5CDl_SSrMw&quot;&gt;documentation &lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Step 1: Have a file already uploaded to Filepicker&lt;/p&gt;

&lt;p&gt;Step 2: Use this Syntax&lt;/p&gt;
&lt;div class=&quot;language-plaintext highlighter-rouge&quot;&gt;&lt;div class=&quot;highlight&quot;&gt;&lt;pre class=&quot;highlight&quot;&gt;&lt;code&gt;https://www.filepicker.io/api/file/handle&amp;gt;/convert?format=[options]
&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;Step 3: Your file will be stored in the root directory by an underscore and filename. You can modify this and the access with &lt;code class=&quot;language-plaintext highlighter-rouge&quot;&gt;{storeAcess}&lt;/code&gt; option.&lt;/p&gt;

&lt;h4 id=&quot;how-can-i-use-this-feature&quot;&gt;How can I use this feature?&lt;/h4&gt;

&lt;p&gt;Here are a few ideas for how you can use this feature in your application.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;
    &lt;p&gt;Create an image preview of PDFs before they are downloaded.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Convert .TIFF files to a format that is usable by browsers.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Create static HTML from legacy .txt files&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Provide a universally accessible spreadsheet by converting XLS to OpenOffice .ODS format.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Create an online Powerpoint viewer by converting PPT to PNGs.&lt;/p&gt;
  &lt;/li&gt;
  &lt;li&gt;
    &lt;p&gt;Make indexable documents by converting .doc to .txt&lt;/p&gt;
  &lt;/li&gt;
&lt;/ul&gt;

&lt;h4 id=&quot;monitor-usage&quot;&gt;Monitor usage.&lt;/h4&gt;

&lt;p&gt;Any file conversions will show up in the &lt;a href=&quot;http://cl.ly/image/1b0b311v3K0J&quot;&gt;Filepicker dashboard,&lt;/a&gt; the Startup plan start at 6,000 conversion a month and custom plans are available.&lt;/p&gt;

&lt;hr /&gt;
</description>
        <pubDate>Thu, 04 Jun 2015 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/product/Writing-about-a-new-product-feature/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/product/Writing-about-a-new-product-feature/</guid>
        
        
        <category>blog</category>
        
        <category>product</category>
        
      </item>
    
      <item>
        <title>Goodbye TRIL.</title>
        <description>&lt;p&gt;For the last 2 and a half years, I have been working at TRIL. Last week I handed in my notice to join a small but highly ambitious Dublin based start-up.  Leaving TRIL was a difficult decision, it was my first full-time employment out of University, and it has been an amazing opportunity to work with so many talented people.   &lt;img class=&quot;left-image&quot; title=&quot;Design Workshop&quot; src=&quot;/wp-content/uploads/2010/11/IMG_5080-150x150.jpg&quot; alt=&quot;TRIL Design workshop&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;My blog has been very quiet for two years as so much of my work has been classed as IP sensitive.  At TRIL I had the chance to work across all research strands, working with top researchers, professors and practitioners.&lt;/p&gt;

&lt;p&gt;My role as an interaction designer was to bridge research from &lt;a href=&quot;https://web.archive.org/web/20111019002045/http://trilcentre.org/technology-design/design.html&quot;&gt;clinic to home&lt;/a&gt;.  I would help take research projects from the drawing board and transform them into something that may work in the house.  As TRIL designs for older adults, accessibility and learnability are very important. Often it would be the first time users may have interacted with complex interfaces.&lt;/p&gt;

&lt;p&gt;Thinking about the &lt;a href=&quot;https://web.archive.org/web/20110728131920/http://trilcentre.org/technology-design.html&quot;&gt;product holisiticy&lt;/a&gt; was key to many of the successful TRIL deployments.  A balance was always required to both get clinical requirements and user requirements.  Some projects would require stricter compliance to technology, and others would focus on a social UX.  I got the chance to work with anthropologists and social scientists.  This was great as they compared observations to society and framing their observations within a context.&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;right-image&quot; title=&quot;UsingAnMCA&quot; src=&quot;/wp-content/uploads/2010/11/UsingAnMCA-150x150.jpg&quot; alt=&quot;&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;At TRIL I had the chance to work on a &lt;a href=&quot;https://web.archive.org/web/20111019002045/http://trilcentre.org/tril-research/home-deployments/building-bridges.html&quot;&gt;Social communication aid&lt;/a&gt;, 2 X Exercise &lt;a href=&quot;https://web.archive.org/web/20111019002045/http://trilcentre.org/tril-research/home-deployments/stepping-stones.html&quot;&gt;Systems&lt;/a&gt;, &lt;a href=&quot;https://web.archive.org/web/20111019002045/http://trilcentre.org/tril-clinic/technology/moblie-clinical-assistant.html&quot;&gt;Clinical Tablet data collection tools&lt;/a&gt;, Multisensory integration training, a refined data dashboard, remote usability tools,  &lt;a href=&quot;http://www.shimmer-research.com/&quot;&gt;embedded sensors&lt;/a&gt; and our in&lt;a href=&quot;www.biomobius.org/&quot;&gt; house visual programming environment&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;I worked with some fantastic people and will miss the different intellectual power of TRIL and Intel.  Including the many who have already parted from TRIL, and have gone onto some great things.&lt;/p&gt;

&lt;p&gt;I shall keep you posted as I make my transition to my new calling. To call it a day job, may be unfair to the night.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;BONUS: You can have my old job!&lt;/strong&gt; Yes, there is a need for Interaction Designers in Dublin.  Luckily I helped create the IxDA Dublin community two years ago, and this would be the perfect position to line someone up for Interaction 2012.   If you are in Dublin, come along to the &lt;a href=&quot;http://www.ixda.org/local/event/28505&quot;&gt;IxDA Dublin Crimbo party &lt;/a&gt;for a full update on all TRIL activity.&lt;/p&gt;

</description>
        <pubDate>Tue, 30 Nov 2010 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/benarentcouk/goodbye-tril/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/benarentcouk/goodbye-tril/</guid>
        
        
        <category>blog</category>
        
        <category>benarent.co.uk</category>
        
      </item>
    
      <item>
        <title>24hr The Web | Team A | http://www.handinhand.ie/</title>
        <description>&lt;p&gt;For the last 24hrs I have been helping a team to build a website for CDS Helping Hands. As part of &lt;a href=&quot;http://24theweb.com/&quot;&gt;24hr the web. &lt;/a&gt;. A big thanks to Stuart and Daragh for setting everything up and sorting us out with loads of sponsored food. Big shout-out to Joe Burger, IQContent, Bel &amp;amp; Bellucci and &lt;a href=&quot;http://24theweb.com/2011/10/thanks-yamamori/&quot;&gt;many more. &lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We took this site&lt;/p&gt;

&lt;h2 id=&quot;httpwwwcdshelpinghandsie&quot;&gt;&lt;a href=&quot;https://web.archive.org/web/20071127063240/http://www.cdshelpinghands.ie/&quot;&gt;http://www.cdshelpinghands.ie&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;&lt;img class=&quot;alignleft size-medium wp-image-409&quot; title=&quot;http://www.cdshelpinghands.ie/&quot; src=&quot;/wp-content/uploads/2010/11/fromThs-600x399.png&quot; alt=&quot;&quot; width=&quot;600&quot; height=&quot;399&quot; /&gt;&lt;/p&gt;

&lt;p&gt;to this (all in 24hrs!)&lt;/p&gt;

&lt;h2 id=&quot;httpwwwhandinhandie&quot;&gt;&lt;a href=&quot;http://www.handinhand.ie&quot;&gt;http://www.handinhand.ie/&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-medium wp-image-410&quot; title=&quot;toThis&quot; src=&quot;/wp-content/uploads/2010/11/toThis-600x392.png&quot; alt=&quot;&quot; width=&quot;600&quot; height=&quot;392&quot; /&gt;&lt;/p&gt;

&lt;p&gt;My role was IA and UX and most of the work was done at the first half of the project, later on I helped to create images and helped upload images and fix bugs on the site.&lt;/p&gt;

&lt;p&gt;Find out more.&lt;br /&gt;
Thanks team!&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/elainelarkin&quot;&gt;Elaine Larkin&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/markwallis&quot;&gt;Mark Wallis&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/cloudsteph&quot;&gt;Stephanie Francis&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/ianhuet&quot;&gt;Ian Huet&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/amygrange&quot;&gt;Amy Grange&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/netrunnerIT&quot;&gt;Anthony Lindsay&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-medium wp-image-415&quot; title=&quot;Mark&quot; src=&quot;/wp-content/uploads/2010/11/Mark-600x400.jpg&quot; alt=&quot;&quot; width=&quot;600&quot; height=&quot;400&quot; /&gt;&lt;/p&gt;

&lt;!--more--&gt;

&lt;h3 id=&quot;a-manual&quot;&gt;A Manual&lt;/h3&gt;

&lt;p&gt;Yes, a manual is boring work but Vital if the website needs to be updated.&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-full wp-image-412&quot; title=&quot;chaingStaticContentBlog&quot; src=&quot;/wp-content/uploads/2010/11/chaingStaticContentBlog.png&quot; alt=&quot;&quot; width=&quot;307&quot; height=&quot;427&quot; /&gt;&lt;/p&gt;

&lt;h3 id=&quot;a-ia&quot;&gt;A IA&lt;/h3&gt;

&lt;p&gt;Rather boring again, but this involved making the navigation simpler and using the correct names for titles and links.&lt;/p&gt;

&lt;h3 id=&quot;new-images-and-illustrations-for-the-site&quot;&gt;New Images and Illustrations for the site.&lt;/h3&gt;

&lt;p&gt;&amp;lt;&amp;gt;&lt;/p&gt;

&lt;h3 id=&quot;a-funky-404&quot;&gt;A funky 404.&lt;/h3&gt;

&lt;p&gt;Check it out at &lt;a href=&quot;http://www.handinhand.ie/fdsfsd&quot;&gt;http://www.handinhand.ie/fdsfsd&lt;/a&gt;&lt;/p&gt;

</description>
        <pubDate>Sun, 14 Nov 2010 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/benarentcouk/24hr-the-web-team-a-httpwww-handinhand-ie/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/benarentcouk/24hr-the-web-team-a-httpwww-handinhand-ie/</guid>
        
        
        <category>blog</category>
        
        <category>benarent.co.uk</category>
        
      </item>
    
      <item>
        <title>5 top tips for Interaction Designers at a Start up weekend.</title>
        <description>&lt;p&gt;&lt;img class=&quot;size-full wp-image-394  top left&quot; title=&quot;Dublin start up weekend&quot; src=&quot;/wp-content/uploads/2010/05/startupweekend.jpg&quot; alt=&quot;&quot; width=&quot;223&quot; height=&quot;200&quot; /&gt;&lt;/p&gt;

&lt;p&gt;On the weekend of the 7&lt;sup&gt;th&lt;/sup&gt; to 9&lt;sup&gt;th&lt;/sup&gt;, I spend two days and an evening in an old renovated wheat storehouse that is the digital hub.  The two days were part of the &lt;a href=&quot;http://startupweekend.org/&quot;&gt;54hr start up weekend&lt;/a&gt;, hosted by the &lt;a href=&quot;http://www.ndrc.ie/&quot;&gt;NDRC&lt;/a&gt;&lt;/p&gt;

&lt;h2 id=&quot;1-come-with-your-machine-setup&quot;&gt;1. Come with your machine setup.&lt;/h2&gt;

&lt;p&gt;I forget that I had previously installed Windows 7, and had not reinstalled Adobe Creative suite onto my laptop.  Lucky the location at the NDRC the internet connection was great (2mb download!), so it didn’t take long to get the latest CS5 demo onto my laptop.  I was presently surprised with the latest CS5 updates, and especially liked the new tab feature in Dreamweaver CS5. The added time left more time sketching, and doing all the important non-computer needed work.&lt;/p&gt;

&lt;h2 id=&quot;2-be-prepared-to-make-it-pretty&quot;&gt;2. Be prepared to “make it pretty”.&lt;/h2&gt;

&lt;p&gt;I’m often referred to the guy who makes stuff pretty, and while interaction designers do like to ‘find the right design’ before “getting the design right”. There was little time to really do any research, personas, and wire-frames were created on napkins and whiteboards by the whole team.  I’m a great believer in getting everyone to the white board and think prettying up wire-frames in blasiq is something you do to get clinit sign off. Spending time making wireframes is a waste of time in 54hrs, and doesn’t really help much to the development team. The process of creating wireframes on the white board, is better than the end document.&lt;br /&gt;
&lt;img class=&quot;aligncenter size-full wp-image-389&quot; title=&quot;geoDealio Napkin Sketch&quot; src=&quot;/wp-content/uploads/2010/05/napkinsketch.jpg&quot; alt=&quot;&quot; width=&quot;670&quot; height=&quot;200&quot; /&gt;&lt;br /&gt;
Once we had the design; I quickly started to explore logo options and colour schemes with the whole team. By involving everyone in the sketch, then to a fluid flash sketch stage, then finally in Illustrator. Logo ideas can be quickly iterated and everyone feels part of the process.&lt;/p&gt;

&lt;p&gt;Once we had the final design, I had to draw it again in Illustrator.  This cleans the logo up, and the team we very happy with the transformation.&lt;br /&gt;
&lt;img class=&quot;aligncenter size-full wp-image-390&quot; title=&quot;geoDealio Logo Design Process&quot; src=&quot;/wp-content/uploads/2010/05/logodesignprocess.jpg&quot; alt=&quot;&quot; width=&quot;670&quot; height=&quot;200&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;3-use-a-css-framework&quot;&gt;3. Use a CSS framework.&lt;/h2&gt;

&lt;p&gt;A CSS framework means you don’t have to reinvent the wheel. I’m a fan of &lt;a href=&quot;http://www.blueprintcss.org/&quot;&gt;Blueprint&lt;/a&gt;, but have used grid 960. Blueprint allows a designer to quickly add &lt;divs&gt; into a smart grid, that is cross browser compatible out of the box.&lt;/divs&gt;&lt;/p&gt;

&lt;h2 id=&quot;4-go-beyond-the-216-present-of-web-colours&quot;&gt;4. Go beyond the 216 present of web colours.&lt;/h2&gt;

&lt;p&gt;Modern browsers can support &lt;a href=&quot;http://www.w3schools.com/html/html_colors.asp&quot;&gt;16,000,000 colours&lt;/a&gt;, Don’t pick #556 ( bright yellow) with #666 just because it pops out.  Geodealio used a colour pallet from &lt;a href=&quot;https://color.adobe.com/&quot;&gt;Kuler&lt;/a&gt;, this creates a pallet of 5 colours to help give a harmonious scheme to our app.&lt;br /&gt;
&lt;img class=&quot;aligncenter size-full wp-image-387&quot; title=&quot;a nice web palette&quot; src=&quot;/wp-content/uploads/2010/05/webpallet.jpg&quot; alt=&quot;&quot; width=&quot;670&quot; height=&quot;20&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;5-be-able-to-convert-a-psd-to-csshtml-to-template&quot;&gt;5. Be able to convert a PSD to CSS/HTML to Template.&lt;/h2&gt;

&lt;p&gt;Be aware that working with django monkeys, you are going to have to take sexy photoshop and make it work. You need to know the whole process of cutting up images, creating CSS and then finally adding it the template files via &lt;a href=&quot;http://en.wikipedia.org/wiki/Apache_Subversion&quot;&gt;SVN&lt;/a&gt;. This means your code needs to be clean and usable, so try to start with a good naming convention for you CSS classes. Adding HTML comments with a visual guides also allowed developers to more easily implement the ‘look and feel’ in hard code.&lt;/p&gt;

&lt;h3 id=&quot;bonus-tip-1-have-fun-and-share-knowledge&quot;&gt;Bonus Tip 1. Have Fun, and share knowledge.&lt;/h3&gt;

&lt;p&gt;One of the best aspects of the start-up weekend is that you can ask stupid questions about the back-end or iPhone application and the wonders of the django framework.  It was a great event and working around a round table made working as a team very efficient.  You will be respected as the graphics guy, and they will quickly notice that an interaction designer can bring more than flows, personas wire-frames and really deliver on a project.&lt;/p&gt;

&lt;h3 id=&quot;bonus-tip-2--turn-up&quot;&gt;Bonus Tip 2 – Turn UP!&lt;/h3&gt;

&lt;p&gt;Unfortunately there was only 4 User Experience / Interaction Designers at start up weekend, compared to 30 odd developers.  Its a shame to see so few designers take up the quick challenge,  design and development doesn’t have to take 6 month cycles and start-up weekend proved this. If your a UX designer in Dublin, &lt;a href=&quot;http://ixd.ie/&quot;&gt;join the IxDA Dublin&lt;/a&gt; to keep up to date with the latest Ux and IxD events.&lt;/p&gt;

&lt;p&gt;I dedicate this post my team (&lt;a href=&quot;https://twitter.com/geodealio&quot;&gt;@godealio&lt;/a&gt;), who won the Dublin Start up weekend.&lt;br /&gt;
&lt;img class=&quot;aligncenter size-full wp-image-392&quot; title=&quot;geoDealio Team&quot; src=&quot;/wp-content/uploads/2010/05/geoDealioTeam.jpg&quot; alt=&quot;&quot; width=&quot;670&quot; height=&quot;200&quot; /&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.geodealio.com&quot;&gt;geoDealio &lt;/a&gt;is a service that provides real time, location based deals.  Four of the team are moving the project forwards, and there will be a beta released very soon.&lt;/p&gt;

&lt;p&gt;I would like to thank &lt;a href=&quot;https://twitter.com/seanrmurphy&quot;&gt;Sean&lt;/a&gt;, Amy, and Clint.  The sponsors for hosting such a great event, it all went very smoothly, and the food was good. With some of the best muffins and doughnuts I had in a while. The whole event had a great vibe, and I met many cool people.&lt;/p&gt;

&lt;p&gt;I have posted my photos to my &lt;a href=&quot;https://www.flickr.com/photos/benarent/sets/72157624017775318/&quot;&gt;Flickr Account&lt;/a&gt;.&lt;/p&gt;

</description>
        <pubDate>Tue, 18 May 2010 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/top-tips/5-top-tips-for-interaction-designers-at-a-start-up-weekend/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/top-tips/5-top-tips-for-interaction-designers-at-a-start-up-weekend/</guid>
        
        <category>geodealio</category>
        
        <category>start up weekend</category>
        
        
        <category>blog</category>
        
        <category>top tips</category>
        
      </item>
    
      <item>
        <title>2009 Review.</title>
        <description>&lt;p&gt;Conferences.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Presented at &lt;a href=&quot;http://www.intel.com/corporate/education/emea/event/irc/fe_speakers.htm#Arent&quot;&gt;ERIC&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;Presented bettie at &lt;a href=&quot;http://bett.ie/blog/presentations/conference/ecomm-bettie/&quot;&gt;eComm&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;Hosted and Organised&lt;a href=&quot;http://www.i-hci.org/content/ixda-industry-session&quot;&gt; IxDA Session at iHCI&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;After hours activity.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Organised and ran an &lt;a href=&quot;http://arduino.benarent.co.uk/&quot;&gt;Arudino Workshop&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;Organised&lt;a href=&quot;http://defuse.ixd.ie&quot;&gt; DEFUSE: Design for Use.&lt;/a&gt; IxDA Dublin event with over 200 people.&lt;/li&gt;
  &lt;li&gt;Winning Team of &lt;a href=&quot;https://www.flickr.com/photos/benarent/4156283378/&quot;&gt;24hr Design Challenge&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://bett.ie/blog/awards/novaucd-ccdp-runner-up/&quot;&gt;3rd in UCD Campus Company Development Program&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Skills Acquired.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;A better understanding of &lt;a href=&quot;http://en.wikipedia.org/wiki/Grounded_theory&quot;&gt;grounded theory&lt;/a&gt;, and learnt a lot from our &lt;a href=&quot;https://web.archive.org/web/20111019002045/http://trilcentre.org/ethnography/introduction.459.html&quot;&gt;ethnography partners&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;Expanded use of video as data gathering and communication tool.&lt;/li&gt;
  &lt;li&gt;More advanced hardware and software prototyping.&lt;/li&gt;
  &lt;li&gt;AS3 knowledge has expanded 500%. Even writing classes, and visuals in code.&lt;/li&gt;
  &lt;li&gt;Better understanding and visualization of users usage of systems.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;New Tools in 2010.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;Arduino.&lt;/li&gt;
  &lt;li&gt;Twitter. &lt;a href=&quot;http://www.twitter.com/benarent&quot;&gt;Follow me for more news. &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;Business Development as part of &lt;a href=&quot;http://www.ucd.ie/nova/campuscompaniesentrepreneurs/campuscompanydevelopmentprogramme/&quot;&gt;CCDP&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Best Books of 2010.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/product/0470229101?ie=UTF8&amp;amp;tag=increasetheja-21&amp;amp;linkCode=as2&amp;amp;camp=1634&amp;amp;creative=19450&amp;amp;creativeASIN=0470229101&quot;&gt;Designing for the digital age&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/product/0596154143?ie=UTF8&amp;amp;tag=increasetheja-21&amp;amp;linkCode=as2&amp;amp;camp=1634&amp;amp;creative=19450&amp;amp;creativeASIN=0596154143&quot;&gt;Programming Interactivity.&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/product/0596526954?ie=UTF8&amp;amp;tag=increasetheja-21&amp;amp;linkCode=as2&amp;amp;camp=1634&amp;amp;creative=19450&amp;amp;creativeASIN=0596526954&quot;&gt;AS3 Cookbook &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/Thoughts-Interaction-Design-Jon-Kolko/dp/012378624X/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1261311714&amp;amp;sr=8-1&quot;&gt;Thoughts on Interaction Design.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Published in.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/product/0500288402?ie=UTF8&amp;amp;tag=benarent-21&amp;amp;linkCode=as2&amp;amp;camp=1634&amp;amp;creative=19450&amp;amp;creativeASIN=0500288402&quot;&gt;Design Revolution: 100 Products That Are Changing People’s Lives &lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/product/184794003X?ie=UTF8&amp;amp;tag=increasetheja-21&amp;amp;linkCode=as2&amp;amp;camp=1634&amp;amp;creative=19450&amp;amp;creativeASIN=184794003X&quot;&gt;Glimmer&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.amazon.com/gp/product/0596518390?ie=UTF8&amp;amp;tag=increasetheja-21&amp;amp;linkCode=as2&amp;amp;camp=1634&amp;amp;creative=19450&amp;amp;creativeASIN=0596518390&quot;&gt;Designing Gestural Interfaces: Touchscreens and Interactive Devices&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Best Talks &amp;amp; Presentations.&lt;/p&gt;

&lt;ul&gt;
  &lt;li&gt;&lt;a href=&quot;http://defuse.ixd.ie&quot;&gt;Defuse&lt;/a&gt;&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;http://www.youtube.com/watch?v=hQCkSLqncp0&quot;&gt;Paola Antonelli at Science Gallery&lt;/a&gt;.&lt;/li&gt;
  &lt;li&gt;&lt;a href=&quot;https://twitter.com/innovinterface&quot;&gt;Innovation Interface.&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;benarent.co.uk Visitor, are slowly growing.. as I slowly blog.&lt;br /&gt;
2008 – 2009 – 42,000 unique visitors.&lt;br /&gt;
2007 – 2008 – 27,000 unique visitors.&lt;br /&gt;
2006 – 2007 – 12,000 unique visitors.&lt;/p&gt;

</description>
        <pubDate>Sun, 20 Dec 2009 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/benarentcouk/2009-review/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/benarentcouk/2009-review/</guid>
        
        
        <category>blog</category>
        
        <category>benarent.co.uk</category>
        
      </item>
    
      <item>
        <title>IxDA Dublin. One year on.</title>
        <description>&lt;p&gt;Recently my blog has been very quite, mostly because I can’t blog about the TRIL centre and secondly because I have been very busy doing the below. This post will show the growth of the IxDA community as we prepare for our one year anniversary.&lt;/p&gt;

&lt;p&gt;I moved to Ireland one year ago to start my first graduate job as an interaction designer. I had just graduated a product design degree at Middlesex university, and was luckily to get the a job at the &lt;a href=&quot;https://web.archive.org/web/20111019002045/http://trilcentre.org&quot;&gt;TRIL centre&lt;/a&gt;. My degree had prepared me well, but as I was the only interaction designer I wanted to get in touch with the IxDA community.&lt;/p&gt;

&lt;p&gt;My first port of call to getting in touch was to contact the IxDA forums, I happened to stumble upon &lt;a href=&quot;http://www.ixda.org/discuss.php?post=33749&amp;amp;search=ixda+dublin&quot;&gt;Seamus Byrne posting&lt;/a&gt;. I got in touch, and within a week we had our first meeting at The South William. One of the many great pub venues in Dublin.&lt;/p&gt;

&lt;!--more--&gt;

&lt;h2 style=&quot;padding-top:15px;&quot;&gt;
  The First Meet. Oct 2008
&lt;/h2&gt;

&lt;p&gt;The first meeting saw just 5 designers. Lucky Seamus had printed out some IxDA posters so the group was easily found. The first event was mostly social with everyone trying to decide if it would be possible to create a group in Dublin. The first group was small but with a mix of talent. The most experienced designer was an American Ben Sykes, a Manager of User Centered Design at Cisco. Who had happened to only just hear about the event that morning.&lt;/p&gt;

&lt;p&gt;Once the word got around we everything slowly gained momentum. Within a couple of months we had an active google group keeping our members updated. Once we became more established we decided that our meetings needed more structure.&lt;/p&gt;

&lt;p&gt;At this point we tried to have a speaker / presenter at every meeting. We would always meet in Pubs and have been lucky to have venues with projectors and free space to accommodate us.&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-medium wp-image-362&quot; style=&quot; padding-top:15px;&quot; title=&quot;presentation and pint&quot; src=&quot;/wp-content/uploads/2009/11/presentationandpint-600x450.jpg&quot; alt=&quot;presentation and pint&quot; width=&quot;600&quot; height=&quot;450&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;presentation-and-a-pint&quot;&gt;Presentation and a Pint.&lt;/h2&gt;

&lt;p&gt;&lt;img class=&quot;size-thumbnail wp-image-360 alignleft&quot; style=&quot;float: left; padding-right:8px;&quot; title=&quot;eye tracking&quot; src=&quot;/wp-content/uploads/2009/11/eyetracking-150x150.jpg&quot; alt=&quot;eye tracking&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;Presentations and a pint are an ideal format in Dublin. Most members work in town, and its very easy to convince members to come to the pub once a month for a meet. 2009 saw some great presentations, a few are highlighted below.&lt;/p&gt;

&lt;p&gt;Bill Caemmerer - Creating personas.&lt;/p&gt;

&lt;p&gt;Clifton Evans - Examples of UI and IA work.&lt;/p&gt;

&lt;p&gt;Celine O’Neil – UX London Synopsis.&lt;/p&gt;

&lt;p&gt;Frank Long – Out of the box experience.&lt;/p&gt;

&lt;p&gt;Dr Jon Dood – Eye Tracking.&lt;/p&gt;

&lt;h2 style=&quot; padding-top:15px;&quot;&gt;
  Book Club
&lt;/h2&gt;

&lt;p&gt;During 2009 Des Traynor organised a IxDA book club. The first book was Bill Buxtons sketching user experience, afterwards we all meet in the IQcontent offices to discuss the book.&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-full wp-image-357&quot; title=&quot;arduino Workshop&quot; src=&quot;/wp-content/uploads/2009/11/arduinoWorkshop.jpeg&quot; alt=&quot;arduino Workshop&quot; width=&quot;500&quot; height=&quot;375&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;sketching-and-arduino-workshops&quot;&gt;Sketching and Arduino Workshops&lt;/h2&gt;

&lt;p&gt;&lt;img class=&quot;size-thumbnail wp-image-361 alignleft&quot; style=&quot;float: left; padding-right:8px;&quot; title=&quot;beer storming&quot; src=&quot;/wp-content/uploads/2009/11/beerstormin-150x150.jpg&quot; alt=&quot;beer storming&quot; width=&quot;150&quot; height=&quot;150&quot; /&gt;Two workshops have been organised this year. Celine O’Neils ran a review of IA London, re-ran Dan Saffers sketching workshop. The workshop was well attended, with a final review at the end.&lt;/p&gt;

&lt;p&gt;The second workshop was my &lt;a href=&quot;http://www.defuse.ixd.ie/&quot;&gt;Arudino and Flash workshop&lt;/a&gt;. 15 members and had a whole day of Arudino and examples of how they could intergrate it into there work.&lt;/p&gt;

&lt;p&gt;&lt;img class=&quot;aligncenter size-medium wp-image-359&quot; style=&quot;padding-top:15px;&quot; title=&quot;i-hci&quot; src=&quot;/wp-content/uploads/2009/11/i-hci-600x450.jpg&quot; alt=&quot;i-hci&quot; width=&quot;600&quot; height=&quot;450&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;ixda-at-i-hci-ireland&quot;&gt;IxDA at I-HCI Ireland.&lt;/h2&gt;

&lt;p&gt;During September  the &lt;a href=&quot;http://www.i-hci.org/content/program&quot;&gt;IxDA were invited&lt;/a&gt; to run an industry session at the i-hci conference at Trinity college Dublin. &lt;a href=&quot;http://www.destraynor.com/&quot;&gt;Des Taynor&lt;/a&gt;, &lt;a href=&quot;http://www.frontend.com/&quot;&gt;Frank Long, Henry Poskitt&lt;/a&gt; and &lt;a href=&quot;http://www.iqcontent.com/&quot;&gt;Niamh Phelan&lt;/a&gt; presented an excellent morning session. We hope to build on the strength of this session and hope to present in the future and create a greater academic and industry conversation.&lt;img class=&quot;aligncenter size-medium wp-image-363&quot; title=&quot;defuseInvite&quot; src=&quot;/wp-content/uploads/2009/11/defuseInvite-600x394.gif&quot; alt=&quot;defuseInvite&quot; width=&quot;600&quot; height=&quot;394&quot; /&gt;&lt;/p&gt;

&lt;h2 id=&quot;defuse-design-for-use&quot;&gt;&lt;a href=&quot;http://www.defuse.ixd.ie/&quot;&gt;DEFUSE: Design for USE&lt;/a&gt;&lt;/h2&gt;

&lt;p&gt;During August I noticed that a call for event for Design week. I though this would be a great chance to tell the rest of the Dublin creatives about ‘Interaction Design’ and a chance to exhibit the excellent design work that is being done in Ireland. I got a short summary in the Design week people and this scared the rest of the members into planning this great event.&lt;/p&gt;

&lt;p&gt;We formed a small event committed and decided to host an &lt;a href=&quot;http://ignite.oreilly.com/&quot;&gt;Ignite &lt;/a&gt;evening , Ignite talks are short presentations in which the presenter has 20 slides which automatically advance every 20 seconds. This 20 x 20 format makes short and entertaining presentations without waffle. Put together this makes an informative and entertaining evening. The IxDA Dublin was lucky to be sponsored by IQContent and Front End who gave us financial sponsorship to get us a great venue (The Sugar Club) and Promotion. We are proud to be sponsored by Bombay Sapphire who are supplying free cocktails to the first 100 entrants. There is a slight twist hosted by Gary, in which people are going to have to sketch there worst experience in Dublin in exchange for a Bombay Sapphire cocktail and with the chance to get a great sponsored prize.&lt;/p&gt;

&lt;p&gt;We are hosting the event on 3rd November (Only two days after I Blog this). We currently have 170 RSVPS to the event, and an amazing speaker line up.&lt;/p&gt;

&lt;p&gt;The IxDA Dublin has come a long way in a year. I’m proud to be member and I hope to see the association go from strength to strength in 2010. We may be quiet on the IxDA Internet forums, we are very active in our own real community, educating, evangelizing and making real and meaningful interactions.&lt;/p&gt;

&lt;p&gt;I would like to thank &lt;a href=&quot;http://www.graphicmint.com/&quot;&gt;Seamus Byrne &lt;/a&gt;for all of his great work in organsing and helping start the IxDA Dublin.&lt;/p&gt;

&lt;p&gt;For more information on the IxDA Dublin.&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;http://www.ixd.ie&quot;&gt;http://www.ixd.ie&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Come back in a week for a write up of &lt;a href=&quot;http://www.defuse.ixd.ie/&quot;&gt;DEFUSE: Design for Use.&lt;/a&gt;&lt;/p&gt;

</description>
        <pubDate>Sun, 01 Nov 2009 00:00:00 +0000</pubDate>
        <link>https://benarent.co.uk/blog/interaction-design/ixda-dublin-one-year-on/</link>
        <guid isPermaLink="true">https://benarent.co.uk/blog/interaction-design/ixda-dublin-one-year-on/</guid>
        
        <category>ixda</category>
        
        <category>ixdadublin</category>
        
        
        <category>blog</category>
        
        <category>interaction design</category>
        
      </item>
    
  </channel>
</rss>
