41554 blogs · [ { "id": "01a0879f-564a-72bd-ab9e-c39ab8537a94", "title": "Doing Small Things With AI", "url": "https://marcgg.com/blog/2026/04/20/the-ai-little-things/", "published_at": "2026-04-20T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1bba7a53", "title": "My AI Workflow (Without Losing My Skills)", "url": "https://marcgg.com/blog/2026/04/15/my-current-ai-workflow/", "published_at": "2026-04-15T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1c0a3551", "title": "Hiring Tech Leaders: Think in Spectrums, Not Checkboxes", "url": "https://marcgg.com/blog/2026/02/18/recruitment-setting-cursors/", "published_at": "2026-02-18T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1ce2b824", "title": "Startup Engineering Team Organisation", "url": "https://marcgg.com/blog/2025/11/17/cross-team-work/", "published_at": "2025-11-17T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1d9c0214", "title": "Minimum Viable Post Mortem Process", "url": "https://marcgg.com/blog/2025/10/24/minimum-viable-postmortem/", "published_at": "2025-10-24T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1df4a7ec", "title": "They Are Really Smart, But...", "url": "https://marcgg.com/blog/2025/10/14/smart-but/", "published_at": "2025-10-14T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1e8bfb56", "title": "My Experience with Liquid Glass so Far", "url": "https://marcgg.com/blog/2025/07/07/ios26-beta-so-far/", "published_at": "2025-07-07T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1e9c75f8", "title": "Building an App to Find Highway Stops", "url": "https://marcgg.com/blog/2025/06/10/highway-app/", "published_at": "2025-06-10T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1f658ddc", "title": "Sometimes Details Are Everything", "url": "https://marcgg.com/blog/2025/06/03/ux-details/", "published_at": "2025-06-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af1fe403c7", "title": "The 3 Types of Power", "url": "https://marcgg.com/blog/2025/03/12/types-of-power/", "published_at": "2025-03-12T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af203896ae", "title": "Controlling the Blast Radius", "url": "https://marcgg.com/blog/2025/03/10/blast-radius/", "published_at": "2025-03-10T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af21202086", "title": "Similarities Between Tech Debt and 'Money' Debt", "url": "https://marcgg.com/blog/2025/02/20/tech-debt/", "published_at": "2025-02-20T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af212ea5c6", "title": "Improving Team Morale is not an Objective", "url": "https://marcgg.com/blog/2025/02/19/team-morale/", "published_at": "2025-02-19T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af213d4ca8", "title": "All Projects Are Business Projects", "url": "https://marcgg.com/blog/2025/02/18/no-technical-project/", "published_at": "2025-02-18T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af21c30b1d", "title": "LLMO: SEO in the Age of AI?", "url": "https://marcgg.com/blog/2025/02/17/ai-seo/", "published_at": "2025-02-17T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af22682d0a", "title": "My Laws, Principles & Rules Cheat Sheet", "url": "https://marcgg.com/blog/2025/02/13/laws/", "published_at": "2025-02-13T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af231f734f", "title": "10 Youtube Channels About Software Engineering", "url": "https://marcgg.com/blog/2025/02/12/dev-youtube/", "published_at": "2025-02-12T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af241c6131", "title": "Gaining Years of Experience in a Few Months", "url": "https://marcgg.com/blog/2025/02/11/high-growth/", "published_at": "2025-02-11T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2482ce6b", "title": "5 Years of Experience OR 5 Times 1 Year of Experience?", "url": "https://marcgg.com/blog/2025/02/07/years-of-experience/", "published_at": "2025-02-07T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af25408dba", "title": "Setting expectations for a new hire's first weeks", "url": "https://marcgg.com/blog/2025/02/06/wait-two-hours/", "published_at": "2025-02-06T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af25b3f82f", "title": "Asking for user feedback", "url": "https://marcgg.com/blog/2025/02/03/ask-for-feedback/", "published_at": "2025-02-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af25fd5d33", "title": "Levels of Defensiveness", "url": "https://marcgg.com/blog/2025/01/06/levels-of-defensiveness/", "published_at": "2025-01-06T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2610e212", "title": "Zen refactoring", "url": "https://marcgg.com/blog/2024/12/09/the-small-stuff/", "published_at": "2024-12-09T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2630e5ba", "title": "The way I run standup meetings", "url": "https://marcgg.com/blog/2024/11/20/standup/", "published_at": "2024-11-20T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af26f9ea80", "title": "Breaking the Routine with a Quick App", "url": "https://marcgg.com/blog/2024/10/22/experimenting-apps/", "published_at": "2024-10-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af27f1494b", "title": "Remove That Feature", "url": "https://marcgg.com/blog/2024/09/03/remove-that-feature/", "published_at": "2024-09-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2851d255", "title": "Minimum Viable Content", "url": "https://marcgg.com/blog/2024/07/23/mvp-not-just-software/", "published_at": "2024-07-23T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2863cb9c", "title": "Typical First Years of Startup Engineering Leadership", "url": "https://marcgg.com/blog/2024/07/17/startup-technical-leadership/", "published_at": "2024-07-17T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af28cd47c2", "title": "Always Having Five Minutes", "url": "https://marcgg.com/blog/2024/06/28/having-five-minutes/", "published_at": "2024-06-28T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af28fafb76", "title": "Generative AI & Writing Blog Articles", "url": "https://marcgg.com/blog/2024/06/21/generative-ai-blogging/", "published_at": "2024-06-21T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af29d094fb", "title": "Agility vs Predictability: Water-Scrum-Fall", "url": "https://marcgg.com/blog/2024/06/05/water-scrum-fall/", "published_at": "2024-06-05T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2a70bddd", "title": "Estimates as a Communication Tool", "url": "https://marcgg.com/blog/2024/04/16/estimating-risk-cost/", "published_at": "2024-04-16T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2b40ea4d", "title": "Learnings From a Student's Terrible Code", "url": "https://marcgg.com/blog/2024/04/03/learnings-from-bad-code/", "published_at": "2024-04-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2be2780b", "title": "Don't Forget to Improve your MVP", "url": "https://marcgg.com/blog/2024/01/09/minimum-viable-product-iterations/", "published_at": "2024-01-09T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2c827707", "title": "30 Years of Trying Code Editors", "url": "https://marcgg.com/blog/2024/01/05/editor-history/", "published_at": "2024-01-05T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2d377c7d", "title": "Sharing My Take Asynchronously", "url": "https://marcgg.com/blog/2023/03/12/opinion-documents/", "published_at": "2023-03-12T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2db5f7eb", "title": "Simple Localisation Process for XCode with Google Sheets", "url": "https://marcgg.com/blog/2022/11/30/i18n-localisation-xcode-google-sheet/", "published_at": "2022-11-30T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2e6d51db", "title": "13 Entertaining Game Devlog Youtube Channels", "url": "https://marcgg.com/blog/2021/04/04/game-devlogs-list/", "published_at": "2021-04-04T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2eb262b9", "title": "One on One Meeting Format Ideas", "url": "https://marcgg.com/blog/2021/03/27/one-on-one-format/", "published_at": "2021-03-27T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2f366405", "title": "Building, Releasing and Marketing an iOS Fitness App", "url": "https://marcgg.com/blog/2020/11/12/building-boxing-mobile-app-swiftui/", "published_at": "2020-11-12T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af2f656cd5", "title": "Force Multipliers", "url": "https://marcgg.com/blog/2020/06/04/force-multipliers/", "published_at": "2020-06-04T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af303bc493", "title": "Is Remote Work Necessarily Asynchronous?", "url": "https://marcgg.com/blog/2020/05/25/remote-distributed-synchronous-asynchronous/", "published_at": "2020-05-25T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af30b997ee", "title": "The Certainty of Failure", "url": "https://marcgg.com/blog/2020/05/22/certainty-of-failure/", "published_at": "2020-05-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af319bee80", "title": "Circular Progress Bar & Timer with SwiftUI", "url": "https://marcgg.com/blog/2020/05/06/circular-progressbar-clock-swiftui/", "published_at": "2020-05-06T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af31a5a643", "title": "Generating Custom Image Previews For Social Media", "url": "https://marcgg.com/blog/2020/04/22/automatic-image-preview/", "published_at": "2020-04-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af31fe4978", "title": "Writing my Manager README", "url": "https://marcgg.com/blog/2020/04/14/creating-my-manager-readme/", "published_at": "2020-04-14T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af32200db9", "title": "Add Text Over an Image with Ruby", "url": "https://marcgg.com/blog/2020/04/11/add-text-image-rmagick-imagemagick/", "published_at": "2020-04-11T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af32d91fe0", "title": "Misuse of update/update! in Ruby on Rails", "url": "https://marcgg.com/blog/2020/04/08/rails-update-bang/", "published_at": "2020-04-08T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af336255ec", "title": "Engineering Team Meeting: Format & Topic Ideas", "url": "https://marcgg.com/blog/2020/04/06/engineering-team-meeting-ideas/", "published_at": "2020-04-06T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af33f39a3a", "title": "Podcast Episodes to Listen to During Lockdown", "url": "https://marcgg.com/blog/2020/03/30/podcasts-episodes-for-quarantine/", "published_at": "2020-03-30T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af341ad0dd", "title": "Process For Recruiting Software Engineers", "url": "https://marcgg.com/blog/2020/03/23/recruitment-interviews-startup/", "published_at": "2020-03-23T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3461c104", "title": "One on One Meeting Opening Lines", "url": "https://marcgg.com/blog/2019/11/30/one-on-one-openers/", "published_at": "2019-11-30T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3557ea36", "title": "The Developer / Manager Feedback Loop Difference", "url": "https://marcgg.com/blog/2019/02/04/management-feedback-loop/", "published_at": "2019-02-04T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af35d8219e", "title": "Regression Testing For Data", "url": "https://marcgg.com/blog/2018/10/22/regression-testing-for-data-ruby/", "published_at": "2018-10-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af368339da", "title": "Committing All The Time", "url": "https://marcgg.com/blog/2018/06/11/git-commit-all-the-time/", "published_at": "2018-06-11T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af37673134", "title": "Expressing Intent Without Comments In Ruby", "url": "https://marcgg.com/blog/2018/05/15/expressing-intent-comments-ruby/", "published_at": "2018-05-15T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af37d27fcd", "title": "Building a Custom Monitor Stand", "url": "https://marcgg.com/blog/2018/04/03/desk-monitor-stand/", "published_at": "2018-04-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af382070a9", "title": "Simplify Your Git Flow", "url": "https://marcgg.com/blog/2018/04/02/simplify-git-flow/", "published_at": "2018-04-02T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af38b23ddf", "title": "Start Shipping Smaller Things", "url": "https://marcgg.com/blog/2018/03/20/splitting-releases/", "published_at": "2018-03-20T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3980ba0f", "title": "Where To Focus Software Quality Efforts", "url": "https://marcgg.com/blog/2018/03/18/software-quality-focus/", "published_at": "2018-03-18T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3a7fec40", "title": "Tracking Short Term Tasks With Notebooks", "url": "https://marcgg.com/blog/2018/02/18/todo-list-notebook-system/", "published_at": "2018-02-18T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3b6b4c1c", "title": "Note Taking During One on Ones", "url": "https://marcgg.com/blog/2017/10/09/paper-note-taking-meetings/", "published_at": "2017-10-09T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3b80fe80", "title": "Continuous Integration at Drivy", "url": "https://marcgg.com/blog/2017/09/27/continous-integration/", "published_at": "2017-09-27T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3b83ae82", "title": "Don't Simply Be The Manager You'd Love To Have", "url": "https://marcgg.com/blog/2017/09/04/manager-you-want/", "published_at": "2017-09-04T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3c244f6b", "title": "The Beginner Mindset & Moving To Management", "url": "https://marcgg.com/blog/2017/08/22/starting-with-management/", "published_at": "2017-08-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3c2da08c", "title": "Blogging About Management", "url": "https://marcgg.com/blog/2017/08/20/blogging-about-management/", "published_at": "2017-08-20T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3d1d29db", "title": "Recruitment Process", "url": "https://marcgg.com/blog/2017/06/30/recruitment-process/", "published_at": "2017-06-30T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3dbe043f", "title": "How To Find Points Contained in a Polygon Using MySQL", "url": "https://marcgg.com/blog/2017/03/13/mysql-viewport-gis/", "published_at": "2017-03-13T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3e56c337", "title": "The Difference Between to_s & to_str In Ruby", "url": "https://marcgg.com/blog/2017/01/23/ruby-to-s-to-str/", "published_at": "2017-01-23T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3e90595c", "title": "Asking The Same Questions As An Interviewer", "url": "https://marcgg.com/blog/2017/01/22/job-interview-questions/", "published_at": "2017-01-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3f63ed56", "title": "Building A Multiplayer 8 Bits Sequencer", "url": "https://marcgg.com/blog/2016/11/21/chiptune-sequencer-multiplayer/", "published_at": "2016-11-21T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af3fae2633", "title": "Generate Sounds Programmatically With Javascript", "url": "https://marcgg.com/blog/2016/11/01/javascript-audio/", "published_at": "2016-11-01T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af4090c5a8", "title": "Kitchenless Restaurants", "url": "https://marcgg.com/blog/2016/10/17/kitchenless-restaurant/", "published_at": "2016-10-17T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af415380eb", "title": "The Best Time To Arrive At A Startup Job Interview", "url": "https://marcgg.com/blog/2016/10/03/job-interview-time/", "published_at": "2016-10-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af420dd03f", "title": "Understanding Rails' Forgery Protection Strategies", "url": "https://marcgg.com/blog/2016/08/22/csrf-rails/", "published_at": "2016-08-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af42868c5a", "title": "Why Resumes Are Actually Helpful", "url": "https://marcgg.com/blog/2016/08/02/developer-resume/", "published_at": "2016-08-02T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af42e1c00e", "title": "Bugmastery: The art of making sure you catch every bug in production", "url": "https://marcgg.com/blog/2016/07/04/monitoring-bugs/", "published_at": "2016-07-04T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af43d2f777", "title": "First Impressions: Rails 5 on Google App Engine", "url": "https://marcgg.com/blog/2016/05/09/rails-app-engine/", "published_at": "2016-05-09T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af4486bca9", "title": "Pushing To Both Bitbucket And Github", "url": "https://marcgg.com/blog/2016/04/25/git-multiple-remotes/", "published_at": "2016-04-25T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af44a19893", "title": "Trailing Slashes, Github Pages, Jekyll 3 & 404s", "url": "https://marcgg.com/blog/2016/03/14/github-pages-jekyll/", "published_at": "2016-03-14T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af459f73f3", "title": "My Tech Advisor Role At Birdly (Y Combinator W16)", "url": "https://marcgg.com/blog/2016/03/14/birdly-ycombinator/", "published_at": "2016-03-14T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af46524b48", "title": "Vim Configuration From Scratch in 2016", "url": "https://marcgg.com/blog/2016/03/01/vimrc-example/", "published_at": "2016-03-01T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af46d59a94", "title": "Simple Git Flow With Heroku Pipelines", "url": "https://marcgg.com/blog/2016/02/22/git-flow-heroku-pipelines/", "published_at": "2016-02-22T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af472c3ccd", "title": "Automatically Run RSpec on Multiple Projects", "url": "https://marcgg.com/blog/2016/02/15/rspec-on-multiple-rails-projects/", "published_at": "2016-02-15T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af47ef26c6", "title": "Code Coverage Is A Vanity Metric", "url": "https://marcgg.com/blog/2015/11/03/code-coverage-vanity-metric/", "published_at": "2015-11-03T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af4848aae9", "title": "How To Checkout The Previous Branch In Git", "url": "https://marcgg.com/blog/2015/10/18/git-checkout-minus/", "published_at": "2015-10-18T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af4895629f", "title": "Don't Automate Tasks Only Based On Time Spent", "url": "https://marcgg.com/blog/2015/09/30/automate-repetitive-tasks/", "published_at": "2015-09-30T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af493721a5", "title": "Deadlines And Estimates In Startups", "url": "https://marcgg.com/blog/2015/08/27/deadlines-estimates-software-startup/", "published_at": "2015-08-27T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af4996260f", "title": "Git Log's --first-parent Option", "url": "https://marcgg.com/blog/2015/08/04/git-first-parent-log/", "published_at": "2015-08-04T00:00:00+00:00" }, { "id": "01a0879f-564b-701a-bb09-a0af49b188ca", "title": "Game of Life Visualisations", "url": "https://marcgg.com/blog/2015/07/01/game-of-life-gif/", "published_at": "2015-07-01T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff138344fd66", "title": "Getting Started With Elixir Processes", "url": "https://marcgg.com/blog/2015/06/04/getting-started-with-elixir-processes/", "published_at": "2015-06-04T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff138413416d", "title": "Real Life A/B Testing With Universal Analytics", "url": "https://marcgg.com/blog/2015/05/26/ab-testing-in-real-life-google-analytics/", "published_at": "2015-05-26T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff138453bde7", "title": "Benchmarking Deployment Speed on Heroku", "url": "https://marcgg.com/blog/2015/02/26/heroku-deploy-speed/", "published_at": "2015-02-26T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff1384d1ad98", "title": "The Technical Accomplishments of Grace Murray Hopper", "url": "https://marcgg.com/blog/2015/02/02/grace-murray-hopper-technical/", "published_at": "2015-02-02T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff138578f755", "title": "New Website Design!", "url": "https://marcgg.com/blog/2015/01/22/new-design/", "published_at": "2015-01-22T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff1385d09afc", "title": "How CSS Animations Can Break Your Tests", "url": "https://marcgg.com/blog/2015/01/05/css-animations-failing-capybara-specs/", "published_at": "2015-01-05T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff13860cc24b", "title": "Coaching A Young Team Creating a Startup (And Helping Them Get Accepted at Le Camping)", "url": "https://marcgg.com/blog/2014/12/16/coaching-startup-birdly-le-camping/", "published_at": "2014-12-16T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff1386d757a5", "title": "A Script To Benchmark MySQL Indexes", "url": "https://marcgg.com/blog/2014/10/13/mysql-try-all-indexes-combinations-script/", "published_at": "2014-10-13T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff13874839fb", "title": "Managing Your Project With Github Issues And HuBoard", "url": "https://marcgg.com/blog/2014/09/17/huboard-kanban-board-github/", "published_at": "2014-09-17T00:00:00+00:00" }, { "id": "01a0879f-564c-7020-8ea8-ff13877334d5", "title": "Thoughts On Company Procedures", "url": "https://marcgg.com/blog/2014/07/28/company-process-red-tape/", "published_at": "2014-07-28T00:00:00+00:00" } ] posts Claim your blog
Back to marcgg.com
Blog · corpus.blog/blogs/marcgg.com/posts

marcgg.com

marcgg.com

2026

2025

2024

2023

2022

2021

2020

2019

2018

2017

2016

2015

2014