<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Simon Stranks</title>
    <description>The latest articles on DEV Community by Simon Stranks (@sstranks).</description>
    <link>https://dev.to/sstranks</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.us-east-2.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F589333%2F55230672-bd0d-4498-8023-f4d60fc2f0f9.jpg</url>
      <title>DEV Community: Simon Stranks</title>
      <link>https://dev.to/sstranks</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/sstranks"/>
    <language>en</language>
    <item>
      <title>My Development Environment; DX and considerations</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Wed, 24 Jun 2026 17:22:34 +0000</pubDate>
      <link>https://dev.to/sstranks/my-development-environment-dx-and-considerations-282m</link>
      <guid>https://dev.to/sstranks/my-development-environment-dx-and-considerations-282m</guid>
      <description>&lt;p&gt;When I began my development journey, with a very limited knowledge base, I had two key considerations I wanted to fulfil: to gain hands-on experience of maintaining a Linux environment because Linux is used throughout production environments, and to ensure I had good system security for my computer because I would inevitably be invoking other people’s code.&lt;/p&gt;

&lt;p&gt;As it turned out my hybrid approach of using Windows Subsystem for Linux (WSL2) met those requirements, whilst allowing me to keep the familiar Windows OS I have been using for years - I did setup a dual-boot environment on my old laptop, experimenting and customizing Linux Mint.&lt;/p&gt;

&lt;p&gt;WSL2 allows the best of both OS worlds; I can continue to use software that Linux currently doesn’t handle i.e. the Adobe suite, keep Windows as my native OS, have a degree of interoperability that a full virtual-machine doesn’t, and also get the security benefits of a more isolated development environment.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Linux Debian Trixie?
&lt;/h2&gt;

&lt;p&gt;Initially I used the WSL2 Ubuntu distro from the Microsoft store, not knowing anything about the strengths and weaknesses of the different distributions. On my journey I have gone through upgrading one major version of Ubuntu, to switching over to Debian Bookworm, and then manually upgrading to Debian Trixie;&lt;/p&gt;

&lt;p&gt;Eager to get Trixie running, before Microsoft added it to their store, I got the image tar on the day of release from debian.org; built the rootfs, keyring, updated, passed it over to WSL to import, assigned package sources, users and permissions, ssh/sshd, docker rootless, and all the other configuration and useful packages I’ve picked up on my journey so far.&lt;/p&gt;

&lt;p&gt;Debian is very stable, more minimal than Ubuntu, and not the masochistic headache that Arch would give an amateur. Along with stability it prioritizes reliability, which is perfect from a security standpoint - this month (June 2026) Arch User Repository suffered a massive supply-chain attack! Not much more to say other than for myself, Debian was the only logical choice.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why WSL2?
&lt;/h2&gt;

&lt;p&gt;In conjunction with the introductory paragraph of reasons, WSL2 gives a consistent shell environment so OS toolchains can remain largely isolated to their respective OS. I also felt it would be easier for a total beginner to setup isolation practices e.g. not mounting the local drives in the Debian instance via &lt;code&gt;wsl.conf&lt;/code&gt;, then setting proper users/permissions so only root can mount/unmount drives, than going for a full virtual-machine setup with its overhead and configuration. Using WSL2 also seemed like a useful skill to have.&lt;/p&gt;

&lt;p&gt;All my project data lives on an external ext4 formatted drive, rather than within the WSL2 VHDX itself, giving portability and acting as a backup. It also makes permissions easier to deal with keeping everything Linux side than going between Windows and Linux. I also devised a system involving shell scripts to backup my distro and project data once a month to other devices for safe keeping.&lt;/p&gt;

&lt;p&gt;The Windows 10 Terminal also allows you to easily spin up multiple distros with WSL2, along with other things like PowerShell and Windows CMD, which makes for a nice developer experience too.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why VSCode on Windows?
&lt;/h2&gt;

&lt;p&gt;VSCode is free, constantly maintained and evolving, and for a beginner the inevitable choice given virtually all tutorials work with it. But why on Windows, and not within WSL2? Initially it was just pure preference, knowing it would be easier to debug setup issues in Windows than potentially dealing with Linux issues on top that. Second, it was a chance to experiment with utilizing SSH, connecting from VSCode to the WSL2 Debian instance. From a security standpoint the line gets a bit blurred with VSCode extensions, however my curated list only involves well-known, well-established extensions so the risk is minimized from that vector. The UI remains Windows side, and the VSCode Server runs Linux side along with the majority of the extensions.&lt;/p&gt;

&lt;h2&gt;
  
  
  Why Docker Rootless?
&lt;/h2&gt;

&lt;p&gt;In conjunction with WSL2, Docker could be setup solely inside the Debian instance - Docker Desktop for Windows has issues and using it would also break my desire for environment isolation. The key security consideration was enabling ‘Rootless’ mode, which avoids running Docker daemon as Root in order to limit the blast radius of potential container escaping malicious code. This did provide some headache moments - Iptables issue related to the way WSL2 distros handle things behind the scenes - but I was able to get it working successfully in the end, and it gave me more exposure to deeper Linux configuration.&lt;/p&gt;

&lt;h2&gt;
  
  
  Closing Thoughts
&lt;/h2&gt;

&lt;p&gt;My setup is intentionally opinionated, and certainly not the simplest for a total beginner to setup. But I had confidence in my own ability to figure it all out, and I knew it would be worthwhile to take the approach I did. And it has paid off in respect to both of the initial considerations I listed; Linux experience and security.&lt;/p&gt;

&lt;p&gt;Over time I have become very familiar with the Linux system, developed a nice toolchain and configuration for my productivity, and the result is a workflow setup that feels productive and predictable, and also allows for the continuing expansion of skills in Linux itself.&lt;/p&gt;

&lt;p&gt;With all the NPM and other supply chain attacks it is also satisfying that I took the time to ensure personal security from the outset and that my initial concerns about invoking others code was a correct hunch.&lt;/p&gt;

</description>
      <category>dx</category>
      <category>security</category>
      <category>developer</category>
    </item>
    <item>
      <title>Week 6-13 - Summary</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Thu, 20 May 2021 23:13:32 +0000</pubDate>
      <link>https://dev.to/sstranks/week-6-13-summary-14me</link>
      <guid>https://dev.to/sstranks/week-6-13-summary-14me</guid>
      <description>&lt;p&gt;What a long JavaScript journey!&lt;/p&gt;

&lt;p&gt;I purchased a complete JS course through Udemy and have spent the past several weeks working my way through the entire 60+ hour course; completing the challenges, the projects, and importantly making quality notes for reference so the knowledge isn’t lost! I also found a website called ‘Codecademy’ and worked through their tutorial section too, which was also useful.&lt;/p&gt;

&lt;p&gt;It was a bit of a slog trying to complete the entire Udemy JS course, but I felt it necessary in order to get a thorough understanding of JS and to have a solid book of notes for reference. The course covered all the fundamentals, some really useful ‘under the hood’ theory on how JS works, and all the way up to the more advanced topics like closure and asynchronous functions. &lt;/p&gt;

&lt;p&gt;Reflecting on my JS journey, I admittedly felt a bit intimidated by the language before I began learning. It is a central language of the internet after all! Now I feel it has been demystified and I feel a lot more confident in my ability to expand my learning going forward. I do quite like the style of the language itself, the syntax and features, but then that’s not really surprising given my first language was VBA inside Excel and AutoCAD!&lt;/p&gt;

&lt;p&gt;I’m going to have a well-deserved break and start fresh next week, having noticed my energy has been decreasing and fatigue setting in (not helped by the abysmal weather and pandemic). I think I will jump back into the &lt;a href="https://www.frontendmentor.io/" rel="noopener noreferrer"&gt;‘FrontEndMentor’&lt;/a&gt; coding challenges next week and move to the more difficult scenarios, so I can apply my JS knowledge practically. I will look for some other JS challenges or practical applications, as well as start planning a personal project to demonstrate my frontend skills – I had an idea to re-create a book of solo card games that I own.&lt;/p&gt;

&lt;p&gt;Thinking ahead, I already have a course and some resources on Python lined up. From my research Python seems to be the next language to delve into, for both its wide scope of application and also for the backend potential use – I think it’s prudent to dive into backend development too, to get a good all round knowledge base. Perhaps when I’ve spent more time practicing my JS skills I may come back and look at Node.JS, algorithms, and more advanced concepts.&lt;/p&gt;

&lt;p&gt;A few weeks back, before I became immersed in the Udemy JS course, I completed the lecture and exercises for CS50 Week 2 which involved more programming in the C language. From memory I think it took the better part of two days to complete the exercises – always opting for the more challenging ones! Now that the JS course is done I want to resume my aim to complete a CS50 module a week, to keep the momentum going and also keep my learning diversified!&lt;/p&gt;

</description>
      <category>diary</category>
      <category>learning</category>
    </item>
    <item>
      <title>Week 5 - Summary</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Mon, 29 Mar 2021 11:42:13 +0000</pubDate>
      <link>https://dev.to/sstranks/week-5-summary-1m49</link>
      <guid>https://dev.to/sstranks/week-5-summary-1m49</guid>
      <description>&lt;p&gt;Week 5, a very hands-on practical week! Most of my work this week consisted of actually writing code as opposed to general researching or tutorials. The principal focus was putting my HTML and CSS (and a dash of JavaScript) learning into action, and this was accomplished through a neat little website a Reddit user recommended to me, at &lt;a href="https://www.frontendmentor.io/solutions" rel="noopener noreferrer"&gt;‘FrontEndMentor’&lt;/a&gt;. They have ‘challenges’ where you are provided the final design as an image and have to work to construct it, using only the provided image files and some styling guidelines. The feedback provided by other users was also really helpful and insightful too, a very useful resource!&lt;/p&gt;

&lt;p&gt;Using the challenge website, I completed 7 of their ‘newbie’ challenges. This really gave me an appreciation for the frustrations of CSS layout, something that I heard being lamented on many YouTube videos! But it also really drilled home the power of CSS. For as frustrating as it was ‘debugging’ particular niggling issues, like responsive width for example, it left me with a good understanding of utilizing &lt;code&gt;max-widths&lt;/code&gt; and &lt;code&gt;width&lt;/code&gt;, when to use absolute pixel units or relative % units, and overall, the positioning of elements in general.&lt;/p&gt;

&lt;p&gt;I was particularly proud of completing one of the challenges for extra bonus points, which required using CSS only and no JavaScript, to create a series of toggling drop down elements on a landing page. I’d seen the &lt;code&gt;:target&lt;/code&gt; pseudo-class used already in a tutorial and knew this was the approach to take. With a bit of experimentation I figured out that by adding the ‘id’ to the &lt;code&gt;&amp;lt;li&amp;gt;&lt;/code&gt; itself the ‘:target’ could be used to target multiple elements at once, allowing for the dropdown, bold-text highlight, and arrow rotation, to all be actioned. &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Solution URL: &lt;a href="https://github.com/SStranks/MyFirstRepository/tree/master/FrontEndMentor/6_Accordian_Card" rel="noopener noreferrer"&gt;@SStranks87&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Live Site URL: &lt;a href="https://epic-kowalevski-1f6d52.netlify.app/" rel="noopener noreferrer"&gt;@Netlify&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The last challenge I completed required the use of some simple JavaScript. Having seen the ‘toggle’ property utilized in a tutorial video to add/remove classes, I implemented it to allow for a simple pop-up navigation panel. The JavaScript code was very clean and straightforward with &lt;code&gt;toggle&lt;/code&gt;, as opposed to using an ‘if else’ method for alternation of states which I observed in other users submitted challenge code.&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Solution URL: &lt;a href="https://github.com/SStranks/MyFirstRepository/tree/master/FrontEndMentor/7_Article_Preview" rel="noopener noreferrer"&gt;@SStranks87&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Live Site URL: &lt;a href="https://cocky-feynman-f56a4d.netlify.app/" rel="noopener noreferrer"&gt;@Netlify&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The mobile responsive &lt;code&gt;@media&lt;/code&gt; could be improved on my challenge designs. Whilst I implemented them where required, having spent all my time really digging and understanding the challenge I did not have the time or inclination to really polish off the CSS – I’m trying to maximize my learning productivity ultimately, not create the polished digital statue of David!&lt;/p&gt;

&lt;p&gt;All my challenges thus far can be found in my &lt;a href="https://github.com/SStranks/MyFirstRepository/tree/master/FrontEndMentor" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;. Each challenge displays the ReadMe.MD, containing a link to the live-site for each challenge.&lt;/p&gt;

&lt;p&gt;Later in the week I watched week 1 (#2) of Harvard’s CS50 course. Having already gotten familiar with the basic programming concepts (e.g. loops) through my self-taught VBA work at my previous job, this lecture was easy to follow. Digging into the concept of data-types brought back memories of writing VBA code and not realising at the time the limitations of using ‘integers’ versus using ‘long’. It took me awhile to figure out that my code was technically correct and that the error was the data-type! A painful, but very applicable learning experience! Seeing some ‘C’ implemented was interesting, and I aim to work through the exercises CS50 provided at some point in the coming week. &lt;/p&gt;

&lt;p&gt;I was also recommended to investigate 'CSS Cube' by a user on FrontEndMentor. It is an implementation protocol, similar to BEM. Looks interesting, might try and implement it when I start creating more hefty CSS.&lt;/p&gt;

</description>
      <category>diary</category>
      <category>learning</category>
    </item>
    <item>
      <title>Week 4 - Summary</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Mon, 22 Mar 2021 00:22:16 +0000</pubDate>
      <link>https://dev.to/sstranks/week-4-summary-4ja4</link>
      <guid>https://dev.to/sstranks/week-4-summary-4ja4</guid>
      <description>&lt;p&gt;This week was a very open exploration! At the start I was experimenting with CSS and making a dynamic menu, but this quickly evolved to investigating animations, then SVG graphics and performance issues. The weeks learning was also rounded off with the first lecture in Harvard’s CS50 2021 series, and a slight detour into the world of the vintage BBC Micro Computer (my first computer experience as a child).&lt;/p&gt;

&lt;p&gt;I created a sliding side menu using only CSS, using the fixed position and having it off screen until the user hovers over an exposed ‘tab’. The tab was created on the div container of the menu using pseudo-elements; the ‘before’ for the side tab element, the ‘after’ for 90° rotated text sitting inside the tab element. Through this experimentation I discovered animation ‘jitter’ due to margins/pointer interaction, resolved it, and also that using animation keyframes was not a good solution because the animation doesn’t reverse. Through further research I found that just using ‘transition’ on the parent element allows for the animation to reverse – also found you can chain &lt;a href="https://css-tricks.com/using-multi-step-animations-transitions/" rel="noopener noreferrer"&gt;transition animations&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In my research to solve the CSS animation issue I branched out and one of my findings was SVGs (Scalable Vector Graphics). Having already gained some proficiency with Adobe Illustrator in my previous career, I’m going to experiment and create some SVG’s soon, perhaps for some buttons or landing page graphics. The low file size and clarity of the graphics is really appealing, and I think they could make my future portfolio really pop! The &lt;a href="http://snapsvg.io/" rel="noopener noreferrer"&gt;SVG Snap&lt;/a&gt; library looks interesting.&lt;/p&gt;

&lt;p&gt;On the topic of graphics, I have been looking at JavaScript 3D graphic potential. I came across &lt;a href="https://threejs.org/" rel="noopener noreferrer"&gt;Three.js&lt;/a&gt; and some other examples. I’d really like to have a crack at trying to make some simple but effective small graphics. I had an idea of expanding on the ‘Periodic Table of Elements’ examples I found, perhaps with some interactive electron shell graphics. Another idea was to create a simple webpage with graphics and mathematical information on the ‘Platonic Solids’. Always good to aim high and challenge yourself!&lt;/p&gt;

&lt;p&gt;Later in the week I completed the first lecture of the Harvard CS50 course, finally realizing after years of using photoshop why RGB is 0-255, and also how binary works! Looking forward to the rest of this course already. &lt;/p&gt;

&lt;p&gt;As a detour I watched a video of a computer science teacher reverse engineer a BBC Micro Computer (video below). This dovetailed nicely with Chapter 3 of ‘Pragmatic Programmer’ and the process of debugging. In the video he faced an issue with getting animation sprites to render correctly, and gave a really nice explanation of the hardware level (CPU vs GPU chips vs VGA monitor beam scan frequency) issue and resolution. Having spent many hours on my fathers BBC Micro as a child this was nostalgic for me personally, and really fascinating. Maybe one day I might try some reverse engineering too.&lt;/p&gt;

&lt;p&gt;I also completed another HTML/CSS Responsive tutorial. This time it was mobile first, and it was interesting to see how different programmers tackle the same general challenge – not sure I feel mobile first is the correct solution at the moment but that may change. &lt;/p&gt;

&lt;h3&gt;
  
  
  BBC Microcomputer - Assembly Programming
&lt;/h3&gt;

&lt;p&gt;  &lt;iframe src="https://www.youtube.com/embed/VAytk_P7U-U"&gt;
  &lt;/iframe&gt;
&lt;/p&gt;

</description>
      <category>diary</category>
      <category>learning</category>
    </item>
    <item>
      <title>Week 3 - Summary</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Thu, 18 Mar 2021 16:15:16 +0000</pubDate>
      <link>https://dev.to/sstranks/week-3-summary-41ek</link>
      <guid>https://dev.to/sstranks/week-3-summary-41ek</guid>
      <description>&lt;p&gt;So, it begins! Week three began to see more of a lean towards experimentation and curiosity driven independent research compared to the initial two weeks – no ‘tutorial hell’ for me thank you!&lt;/p&gt;

&lt;p&gt;Having said that, I did spend a lot of my practical application time working through the ‘Responsive Web Design’ module on freeCodeCamp, in particular the end projects (three completed). It was really useful to work on these, taking them as far as I could on my own, and then when I reached my limit examine their code and work through with the Chrome Dev tools to see how and why I couldn’t get something to work. This highlighted that whilst HTML and CSS are straightforward, remembering how to do specific things and putting it into practice requires.. practice!&lt;/p&gt;

&lt;p&gt;JavaScript. Can’t wait to get stuck into this programming language and breath some real interactivity into the equation. I watched a few tutorial videos, a basic introduction and how it relates to the Document Object Model, and functions;&lt;/p&gt;

&lt;p&gt;I think JavaScript is what I will need to complete my ‘HTML Tags’ page; a dynamic ‘cheat sheet’ that contains all the tags and all the information, as on W3Schools, but all collected on one static page instead of across many (none of the resources seem convenient enough for my taste).&lt;/p&gt;

&lt;p&gt;Another part of the equation will be JSON. I figured out how to store the first two HTML tags worth of information inside a JSON file, and will use the JSON file to hold all of the information required for the page. But after writing out two of the entries I realized I don’t want to spend an entire week copying and filing all the information from W3Schools manually! Why should I, when I know automation could solve this.&lt;/p&gt;

&lt;p&gt;Automation will be the final part of the equation. When I get stuck into Python I’ll create a simple web scrapper to pull out all of the necessary information from W3Schools and file it into my JSON. Or at least that’s what I will aim for! I assume it is possible, unless the website blocks such methods perhaps?&lt;/p&gt;

&lt;p&gt;Part of the week I spent digging into side-tracks relating to CSS. For example, &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Beizer curves; the mathematics behind how the values are calculated, visually, was very insightful. &lt;/li&gt;
&lt;li&gt;Linear gradients; how these can be modified, and even used as masks on text to create a nice header title effect. &lt;/li&gt;
&lt;li&gt;Psuedo-elements; adding extra shapes to objects, tool-tips, extra form elements.&lt;/li&gt;
&lt;li&gt;Accessibility; with CSS putting content off the screen but still ‘there’. Genius!&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;I’m loving how much there is to know and the ability to be instantly creative, create instant problems, then problem solve instantly!&lt;/p&gt;

</description>
      <category>diary</category>
      <category>learning</category>
    </item>
    <item>
      <title>Week 2 - Summary</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Mon, 08 Mar 2021 11:47:13 +0000</pubDate>
      <link>https://dev.to/sstranks/week-2-summary-3kdd</link>
      <guid>https://dev.to/sstranks/week-2-summary-3kdd</guid>
      <description>&lt;p&gt;Two weeks completed. Another long week of learning, but again I’m surprised by just how much ground I have covered. Whilst it has been a bit of a strain trying to cram so much new knowledge into my mind, it hasn’t been too difficult to comprehend the information itself – even managed to wrap my head around some JavaScript code (more below!).&lt;br&gt;
Rounding off my learning from the first week, I finished working my way through some intermediate and advanced HTML guides whilst continuing to add to my GitHub files on HTML and tweaking the formatting.&lt;/p&gt;

&lt;p&gt;Whilst thinking about ways in which to apply my skills I stumbled across a ‘Periodic Table of Elements’ example, using CSS and some basic JavaScript. I spent some time examining the code and was successful in deciphering how the SASS and JavaScript code functions. I also realized that the JavaScript can overrule the CSS; the main table flexbox was only set to 5 rows, half of what was displayed on screen, and this was because the JavaScript was inserting new ‘elements’ into rows beyond 5.&lt;/p&gt;

&lt;p&gt;I continued to apply my knowledge learned so far, of HTML and CSS, by completing two practical tutorials on how to build responsive websites using CSS and Flexbox. It was really useful to follow these through to completion to see the methodology involved. I continued to learn more CSS throughout the week too, covering a range of sub-topics: SASS and pre-processors, Variables and Custom Properties, the Box Model, Positioning, Units, and Psuedo-Elements.&lt;/p&gt;

&lt;p&gt;Presentation is always important. Whilst my GitHub page may seem trivial in comparison to actual coding documentation, I think it is important to demonstrate good presentation even in the small things. So, I created a ReadME.md file to act as a presentational landing page for my GitHub. Using a tutorial, I also successfully added in an ‘action’ so that it dynamically updates the .md to show all my recent blog posts.&lt;/p&gt;

&lt;p&gt;I watched a few interesting videos this week, such as how to get involved in open-source work and a ‘CSS Battle’. Both were insightful, giving me the opportunity to see how others in the community get involved and also how they think when coding. The CSS battle was particularly interesting, seeing how two different individuals attempt to reach the same conclusion through code and how their methodology differed.&lt;/p&gt;

&lt;p&gt;Continuing with my book, ‘Pragmatic Programmer’, I finished Chapter 2. The concept of ‘Orthogonality’ was interesting, and reflecting on my VBA-AutoCAD programming in my previous job I realized immediately where improvements to the spaghetti code could be made!   &lt;/p&gt;

</description>
      <category>diary</category>
      <category>learning</category>
    </item>
    <item>
      <title>Week 1 - First Week of Learning; Summary!</title>
      <dc:creator>Simon Stranks</dc:creator>
      <pubDate>Tue, 02 Mar 2021 22:08:23 +0000</pubDate>
      <link>https://dev.to/sstranks/week-1-first-week-of-learning-summary-2eo4</link>
      <guid>https://dev.to/sstranks/week-1-first-week-of-learning-summary-2eo4</guid>
      <description>&lt;p&gt;My first week of full-time studying completed! It seemed like it was a long week, which is testament to how much new information I absorbed and new skills I put into practice. But the feeling is a positive one, it was a productive week where I learned more than I initially anticipated. &lt;/p&gt;

&lt;p&gt;Drawing on my abilities to grapple with new software and technologies, getting to grips with VSCode was comparatively easy compared to AutoCAD as a Landscape Architect. At the end of the week, I was already utilizing various keyboard shortcuts to increase my workflow and not touching the mouse at all, and using the split-screen editing to see the live preview. &lt;/p&gt;

&lt;p&gt;The Git terminal was more intimidating at first glance; the command line functionality feels like the Latin language, an older but more revered power. However, this too was short lived for by the weekend I had already learned how to move around directories, create files, initialize a repository, add, commit, and finally push/pull contents to my GitHub repository online.&lt;/p&gt;

&lt;p&gt;Learning the basics of HTML was straight forward enough, no real problems with that. Next week I’m going to complete some intermediate and advanced learning to round it off. I don’t think there’s much more to do except keep putting it into practice, and perhaps revisit it later when learning to maximize SEO on websites. &lt;/p&gt;

&lt;p&gt;I implemented a few basic CSS styles in my HTML practice explorations and I’m looking forward to learning more about it this coming week. One week in and I’m already tired of HTML’s basic visual rendering – it’s like Netscape, Windows 95, and the birth of internet all over again!&lt;/p&gt;

&lt;p&gt;The first chapter of “Pragmatic Programming” was more riveting than I expected it to be in all honesty, as I anticipated it to be dry. In fact, it was really encouraging as I realized it was conveying aspects of professionalism that I was already implementing in my previous role as a Landscape Architect, such as the “Broken Window Theory”. It seems like this book will appeal to my meticulous and consistent proclivities.&lt;/p&gt;

&lt;p&gt;I have found two courses I aim to complete during my studies:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Harvard’s CS50 Course&lt;/li&gt;
&lt;li&gt;Udacity CS101 Course&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;These should give a nice background of the more formal learning that comprises Computer Science degree courses, helping to round out my knowledge base (and really test my cognitive ability!).&lt;/p&gt;

&lt;p&gt;Plenty of resources and tutorials now on my list to research and learn from, lots of post-it notes stuck to my desk, lots to be getting on with! Onwards and upwards!&lt;/p&gt;

</description>
      <category>diary</category>
      <category>learning</category>
    </item>
  </channel>
</rss>
