56,966 blogs · [ { "id": "01a0875f-9e1c-73a9-b938-c9e748fdd028", "title": "The process of migrating from Sass to native CSS", "url": "https://chrissmith.xyz/blog/2026/the-process-of-migrating-from-sass-to-native-css/", "published_at": "2026-08-19T09:55:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7498fb615", "title": "How to move from junior to senior developer", "url": "https://chrissmith.xyz/blog/2026/how-to-move-from-junior-to-senior-developer/", "published_at": "2026-03-27T08:10:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74a70b711", "title": "Will AI help me make my code worse?", "url": "https://chrissmith.xyz/blog/2026/will-ai-help-me-make-my-code-worse/", "published_at": "2026-03-17T16:15:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74b5edcda", "title": "Maintaining consistency in content and styling", "url": "https://chrissmith.xyz/blog/2026/maintaining-consistency-in-content-and-styling/", "published_at": "2026-02-13T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74c56aa83", "title": "Quick VS Code tips", "url": "https://chrissmith.xyz/blog/2026/quick-vs-code-tips/", "published_at": "2026-01-02T16:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74d1c5ba5", "title": "How I'm using AI in coding at the end of 2025", "url": "https://chrissmith.xyz/blog/2025/how-im-using-ai-in-coding-at-the-end-of-2025/", "published_at": "2025-12-24T12:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74d52d8a2", "title": "A script replacement loading pattern", "url": "https://chrissmith.xyz/blog/2025/a-script-replacement-loading-pattern/", "published_at": "2025-12-09T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74d6cc205", "title": "The web has gone grey", "url": "https://chrissmith.xyz/blog/2025/the-web-has-gone-grey/", "published_at": "2025-10-20T12:35:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74e532331", "title": "Tips for working with emoji", "url": "https://chrissmith.xyz/blog/2025/tips-for-working-with-emoji/", "published_at": "2025-10-14T10:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74efd78fc", "title": "Using a GitHub Copilot instructions file", "url": "https://chrissmith.xyz/blog/2025/using-a-github-copilot-instructions-file/", "published_at": "2025-09-21T12:45:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e74ffc3af6", "title": "Structuring web components to preserve semantics and browser features", "url": "https://chrissmith.xyz/blog/2025/structuring-web-components-to-preserve-semantics-and-browser-features/", "published_at": "2025-09-18T10:45:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e750841dc0", "title": "The evolution of software development", "url": "https://chrissmith.xyz/blog/2025/the-evolution-of-software-development/", "published_at": "2025-06-09T22:20:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75164270a", "title": "Introducing RandoRacer.com", "url": "https://chrissmith.xyz/blog/2025/introducing-rando-racer/", "published_at": "2025-06-08T21:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e751a38aa3", "title": "Static sandwiches", "url": "https://chrissmith.xyz/blog/2025/static-sandwiches/", "published_at": "2025-06-07T10:55:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e751bcbb2c", "title": "Bulk deleting tweets", "url": "https://chrissmith.xyz/blog/2024/bulk-deleting-tweets/", "published_at": "2024-11-19T17:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7528cd209", "title": "Simplifying dates in JavaScript", "url": "https://chrissmith.xyz/blog/2024/simplifying-dates-in-javascript/", "published_at": "2024-09-04T16:15:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75307c768", "title": "Replacing jQuery UI datepicker with HTML date input", "url": "https://chrissmith.xyz/blog/2024/replacing-jquery-ui-datepicker-with-html-date-input/", "published_at": "2024-07-31T15:45:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e753a4a866", "title": "Code formatting and style guides", "url": "https://chrissmith.xyz/blog/2024/code-formatting-and-style-guides/", "published_at": "2024-07-25T14:15:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7547eb343", "title": "A dedicated pull request channel", "url": "https://chrissmith.xyz/blog/2024/a-dedicated-pull-request-channel/", "published_at": "2024-07-25T14:10:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e754ac03c8", "title": "Converting jQuery to vanilla JavaScript with an AI assistant", "url": "https://chrissmith.xyz/blog/2024/converting-jquery-to-vanilla-javascript-with-an-ai-assistant/", "published_at": "2024-07-19T13:40:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e755433ef6", "title": "Positioning popover elements (pseudo-anchoring)", "url": "https://chrissmith.xyz/blog/2024/positioning-popover-elements-pseudo-anchoring/", "published_at": "2024-06-19T16:55:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7556dd5a3", "title": "The connection between communication languages and programming languages", "url": "https://chrissmith.xyz/blog/2024/the-connection-between-communication-languages-and-programming-languages/", "published_at": "2024-06-19T11:45:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7561f4eb1", "title": "Making a selected value readable when the text is long", "url": "https://chrissmith.xyz/blog/2024/making-a-selected-value-readable-when-the-text-is-long/", "published_at": "2024-06-06T16:15:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e756835b11", "title": "When should we use components and when should we just use HTML?", "url": "https://chrissmith.xyz/blog/2024/when-should-we-use-components-and-when-should-we-just-use-html/", "published_at": "2024-05-22T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e756a751ca", "title": "The development burden of user choice", "url": "https://chrissmith.xyz/blog/2024/the-development-burden-of-user-choice/", "published_at": "2024-04-02T11:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e756d072e1", "title": "Not enough or too much data", "url": "https://chrissmith.xyz/blog/2024/not-enough-or-too-much-data/", "published_at": "2024-03-21T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e756e5fde7", "title": "Please stop using flags to represent languages", "url": "https://chrissmith.xyz/blog/2024/please-stop-using-flags-to-represent-languages/", "published_at": "2024-03-05T16:05:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7575139a7", "title": "Why should we care about Web Accessibility?", "url": "https://chrissmith.xyz/blog/2024/why-should-we-care-about-web-accessibility/", "published_at": "2024-01-26T16:45:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7584bad57", "title": "Learning TypeScript", "url": "https://chrissmith.xyz/blog/2024/learning-typescript/", "published_at": "2024-01-20T11:05:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e758844959", "title": "Rebranding Tips - Part 4 - Typography", "url": "https://chrissmith.xyz/blog/2024/rebranding-tips-part-4-typography/", "published_at": "2024-01-08T16:33:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e759695a91", "title": "Rebranding Tips - Part 3 - Colours", "url": "https://chrissmith.xyz/blog/2024/rebranding-tips-part-3-colours/", "published_at": "2024-01-08T16:32:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75a647f9c", "title": "Rebranding Tips - Part 2 - Brand Names", "url": "https://chrissmith.xyz/blog/2024/rebranding-tips-part-2-brand-names/", "published_at": "2024-01-08T16:31:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75ae0292a", "title": "Rebranding Tips - Part 1 - Logos", "url": "https://chrissmith.xyz/blog/2024/rebranding-tips-part-1-logos/", "published_at": "2024-01-08T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75ae7615b", "title": "What to Validate on a Form", "url": "https://chrissmith.xyz/blog/2023/what-to-validate-on-a-form/", "published_at": "2023-10-27T14:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75bda093b", "title": "Pronunciation of Terms in Web Development", "url": "https://chrissmith.xyz/blog/2023/pronunciation-of-terms-in-web-development/", "published_at": "2023-10-18T17:10:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75c6ed13f", "title": "How Widespread is Ad Blocking?", "url": "https://chrissmith.xyz/blog/2023/how-widespread-is-ad-blocking/", "published_at": "2023-10-09T17:10:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75c727c4e", "title": "Practical Tips to Reduce your Carbon Footprint", "url": "https://chrissmith.xyz/blog/2023/practical-tips-to-reduce-your-carbon-footprint/", "published_at": "2023-09-13T17:40:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75d70411c", "title": "WordPress to Eleventy - Part 2, The How", "url": "https://chrissmith.xyz/blog/2023/wordpress-to-eleventy-part-2-the-how/", "published_at": "2023-06-18T14:00:01+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75de3c766", "title": "WordPress to Eleventy - Part 1, The Why", "url": "https://chrissmith.xyz/blog/2023/wordpress-to-eleventy-part-1-the-why/", "published_at": "2023-06-18T14:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75e272be9", "title": "Who'd be a front end developer?", "url": "https://chrissmith.xyz/blog/2023/whod-be-a-front-end-developer/", "published_at": "2023-06-15T08:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75e9bdd9e", "title": "Prototyping in CodePen", "url": "https://chrissmith.xyz/blog/2023/prototyping-in-codepen/", "published_at": "2023-06-09T16:55:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75f4fd016", "title": "UI Performance - Critical Rendering Path Optimisation", "url": "https://chrissmith.xyz/blog/2023/ui-performance-critical-rendering-path-optimisation/", "published_at": "2023-04-30T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e75fd9a63e", "title": "CARPET - A Front End Checklist", "url": "https://chrissmith.xyz/blog/2022/carpet-a-front-end-checklist/", "published_at": "2022-07-08T08:28:07+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e760b82ec1", "title": "How I'd Learn Front End Web Development Now", "url": "https://chrissmith.xyz/blog/2022/how-id-learn-front-end-web-development-now/", "published_at": "2022-05-27T16:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7618b6e82", "title": "Emmet - Write HTML and CSS Faster", "url": "https://chrissmith.xyz/blog/2021/emmet-write-html-and-css-faster/", "published_at": "2021-12-10T17:15:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e76227abfb", "title": "Progress Indicators", "url": "https://chrissmith.xyz/blog/2021/progress-indicators/", "published_at": "2021-05-23T20:05:25+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e762323238", "title": "New Image Formats - WebP and AVIF", "url": "https://chrissmith.xyz/blog/2021/new-image-formats-webp-and-avif/", "published_at": "2021-01-27T17:30:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7627e436f", "title": "Transitioning to Modern JavaScript", "url": "https://chrissmith.xyz/blog/2021/transitioning-to-modern-javascript/", "published_at": "2021-01-05T17:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e763226317", "title": "Learning to Write Code that is Good Enough", "url": "https://chrissmith.xyz/blog/2020/learning-to-write-code-that-is-good-enough/", "published_at": "2020-08-03T17:27:12+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7634ad08e", "title": "Reasons for Developers to Have a Blog", "url": "https://chrissmith.xyz/blog/2020/reasons-for-developers-to-have-a-blog/", "published_at": "2020-07-26T16:01:11+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e7635e434b", "title": "The Dangers of Logic in CSS", "url": "https://chrissmith.xyz/blog/2020/the-dangers-of-logic-in-css/", "published_at": "2020-03-26T18:00:00+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e76402b118", "title": "Clicking Off Things to Close Them", "url": "https://chrissmith.xyz/blog/2020/clicking-off-things-to-close-them/", "published_at": "2020-03-25T18:00:53+00:00" }, { "id": "01a0875f-9e1c-73a9-b938-c9e764561a42", "title": "Tips for Working from Home", "url": "https://chrissmith.xyz/blog/2020/tips-for-working-from-home/", "published_at": "2020-03-15T08:31:56+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac5590aac", "title": "Print CSS Tips", "url": "https://chrissmith.xyz/blog/2020/print-css-tips/", "published_at": "2020-01-17T16:00:00+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac5e7ff42", "title": "Switching APIs", "url": "https://chrissmith.xyz/blog/2019/switching-apis/", "published_at": "2019-10-17T18:00:59+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac65d8db4", "title": "Safer Passwords", "url": "https://chrissmith.xyz/blog/2019/safer-passwords/", "published_at": "2019-10-11T13:30:48+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac6b3e617", "title": "Edging Out of IE Support", "url": "https://chrissmith.xyz/blog/2019/edging-out-of-ie-support/", "published_at": "2019-08-04T10:00:51+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac75fc59b", "title": "Performance Perception Trick: Processing Lists Faster", "url": "https://chrissmith.xyz/blog/2019/performance-perception-trick-processing-lists-faster/", "published_at": "2019-08-03T08:00:23+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac8374fd1", "title": "Should Designers Be Able to Code?", "url": "https://chrissmith.xyz/blog/2019/should-designers-be-able-to-code/", "published_at": "2019-08-02T18:00:05+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac87f7850", "title": "What Techies Tweet", "url": "https://chrissmith.xyz/blog/2019/what-techies-tweet/", "published_at": "2019-05-03T18:00:36+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ac907d72b", "title": "When to Reach for a Framework (and When Not To)", "url": "https://chrissmith.xyz/blog/2019/when-to-reach-for-a-framework-and-when-not-to/", "published_at": "2019-04-13T08:58:13+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5aca06da53", "title": "Hiding UI Elements", "url": "https://chrissmith.xyz/blog/2019/hiding-ui-elements/", "published_at": "2019-03-29T18:00:17+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acac46833", "title": "What I Learned in 2018", "url": "https://chrissmith.xyz/blog/2018/what-i-learned-in-2018/", "published_at": "2018-12-27T19:00:57+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acb5c7189", "title": "The DOM Diet and Year Pickers", "url": "https://chrissmith.xyz/blog/2018/the-dom-diet-and-year-pickers/", "published_at": "2018-11-15T16:43:21+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acb5da43f", "title": "Why Are We Making Web Development So Hard?", "url": "https://chrissmith.xyz/blog/2018/why-are-we-making-web-development-so-hard/", "published_at": "2018-10-24T17:47:09+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acbf9e330", "title": "Learning Experiences as a Freelancer", "url": "https://chrissmith.xyz/blog/2018/learning-experiences-as-a-freelancer/", "published_at": "2018-10-06T18:01:30+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5accb41603", "title": "Super Fast Tree View in JavaScript", "url": "https://chrissmith.xyz/blog/2018/super-fast-tree-view-in-javascript/", "published_at": "2018-10-05T16:25:04+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5accf82c8c", "title": "Stop Linking to Nowhere", "url": "https://chrissmith.xyz/blog/2018/stop-linking-to-nowhere/", "published_at": "2018-08-01T17:26:36+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acd0a2323", "title": "Google Analytics - Why You Should Replace IDs in URLs", "url": "https://chrissmith.xyz/blog/2018/google-analytics-why-you-should-replace-ids-in-urls/", "published_at": "2018-08-01T16:53:19+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acd768b97", "title": "Experiment: Font Size vs Colour Contrast", "url": "https://chrissmith.xyz/blog/2018/experiment-font-size-vs-colour-contrast/", "published_at": "2018-07-13T19:13:37+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acdf98d32", "title": "Making Icons Accessible", "url": "https://chrissmith.xyz/blog/2018/making-icons-accessible/", "published_at": "2018-05-16T17:42:34+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ace759691", "title": "A New Found Appreciation for Images on the Web", "url": "https://chrissmith.xyz/blog/2018/a-new-found-appreciation-for-images-on-the-web/", "published_at": "2018-05-09T17:17:46+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acef3947b", "title": "How to Be a Good Designer", "url": "https://chrissmith.xyz/blog/2018/how-to-be-a-good-designer/", "published_at": "2018-04-13T18:32:26+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5acf23b942", "title": "Lightning Fast Filtering in JavaScript", "url": "https://chrissmith.xyz/blog/2018/lightning-fast-filtering-in-javascript/", "published_at": "2018-02-01T17:26:27+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad00171d9", "title": "Accessible Colour Contrast", "url": "https://chrissmith.xyz/blog/2018/accessible-colour-contrast/", "published_at": "2018-01-10T19:00:40+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad058f4ea", "title": "What I Learned in 2017", "url": "https://chrissmith.xyz/blog/2018/what-i-learned-in-2017/", "published_at": "2018-01-10T17:17:09+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad08d0a47", "title": "Native Browser Controls Rule", "url": "https://chrissmith.xyz/blog/2017/native-browser-controls-rule/", "published_at": "2017-11-10T18:00:46+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad09d017d", "title": "Do IT Qualifications Hold Value?", "url": "https://chrissmith.xyz/blog/2017/do-it-qualifications-hold-value/", "published_at": "2017-10-25T18:30:16+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad1240685", "title": "Shared User Accounts", "url": "https://chrissmith.xyz/blog/2017/shared-user-accounts/", "published_at": "2017-10-22T14:00:47+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad1ff2103", "title": "Setting Performance Targets", "url": "https://chrissmith.xyz/blog/2017/setting-performance-targets/", "published_at": "2017-10-20T17:30:27+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad28ebf14", "title": "To DOM or Not to DOM?", "url": "https://chrissmith.xyz/blog/2017/to-dom-or-not-to-dom/", "published_at": "2017-10-15T12:00:11+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad36a9689", "title": "Speed, Usability and Speed", "url": "https://chrissmith.xyz/blog/2017/speed-usability-and-speed/", "published_at": "2017-10-14T11:22:28+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad402c185", "title": "Component World", "url": "https://chrissmith.xyz/blog/2017/component-world/", "published_at": "2017-09-09T18:08:39+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad4ba6fed", "title": "Different Conditional Syntaxes in JavaScript", "url": "https://chrissmith.xyz/blog/2017/different-conditional-syntaxes-in-javascript/", "published_at": "2017-06-22T18:00:19+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad57f066f", "title": "Hacking Borders", "url": "https://chrissmith.xyz/blog/2017/hacking-borders/", "published_at": "2017-06-21T18:00:52+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad5ca52b9", "title": "Take a Tour", "url": "https://chrissmith.xyz/blog/2017/take-a-tour/", "published_at": "2017-05-24T18:00:48+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad63b21e8", "title": "Why It's Still Worth Learning Bootstrap", "url": "https://chrissmith.xyz/blog/2017/why-its-still-worth-learning-bootstrap/", "published_at": "2017-05-19T18:00:29+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad6b044b0", "title": "Presenting Multiple Layouts", "url": "https://chrissmith.xyz/blog/2017/presenting-multiple-layouts/", "published_at": "2017-05-05T18:00:02+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad767a190", "title": "Measuring Front End Performance", "url": "https://chrissmith.xyz/blog/2017/measuring-front-end-performance/", "published_at": "2017-05-03T18:00:53+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad82b6a89", "title": "Front End Performance Enhancements", "url": "https://chrissmith.xyz/blog/2017/front-end-performance-enhancements/", "published_at": "2017-05-01T13:00:40+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad8865114", "title": "Precision Level in CSS", "url": "https://chrissmith.xyz/blog/2017/precision-level-in-css/", "published_at": "2017-04-28T18:00:52+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad8d34cd6", "title": "The Welsh Language Conundrum", "url": "https://chrissmith.xyz/blog/2017/the-welsh-language-conundrum/", "published_at": "2017-04-07T17:21:41+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad916cb8b", "title": "Pet Hate: Click Here", "url": "https://chrissmith.xyz/blog/2017/pet-hate-click-here/", "published_at": "2017-03-19T18:38:49+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad927e7dd", "title": "HTML Semantics - Header or Sidebar?", "url": "https://chrissmith.xyz/blog/2017/html-semantics-header-or-sidebar/", "published_at": "2017-03-09T19:10:24+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ad9870669", "title": "Reorganising Data Client Side", "url": "https://chrissmith.xyz/blog/2017/reorganising-data-client-side/", "published_at": "2017-03-08T17:50:17+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5ada7c6213", "title": "Measuring Readership", "url": "https://chrissmith.xyz/blog/2017/measuring-readership/", "published_at": "2017-03-05T11:15:12+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5adab20a66", "title": "Talking to Machines", "url": "https://chrissmith.xyz/blog/2017/talking-to-machines/", "published_at": "2017-02-10T18:00:39+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5adb333b18", "title": "Learning the Right Things", "url": "https://chrissmith.xyz/blog/2017/learning-the-right-things/", "published_at": "2017-02-09T18:30:00+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5adbb583fb", "title": "International box-sizing Awareness Day", "url": "https://chrissmith.xyz/blog/2017/international-box-sizing-awareness-day/", "published_at": "2017-02-01T08:00:41+00:00" }, { "id": "01a0875f-9e1d-7314-836b-ad5adcb1a606", "title": "iOS vs Android vs Windows in 2017", "url": "https://chrissmith.xyz/blog/2017/ios-vs-android-vs-windows-in-2017/", "published_at": "2017-01-29T15:00:57+00:00" } ] posts Claim your blog
Back to chrissmith.xyz
Blog · corpus.blog/blogs/chrissmith.xyz/posts

chrissmith.xyz

chrissmith.xyz

2026

2025

2024

2023

2022

2021

2020

2019

2018

2017