-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.xml
125 lines (103 loc) · 11 KB
/
index.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
<title>Josh Kodroff, Technologist</title>
<link>https://joshkodroff.com/</link>
<description>Recent content on Josh Kodroff, Technologist</description>
<generator>Hugo -- gohugo.io</generator>
<language>en-us</language>
<lastBuildDate>Wed, 04 Jul 2018 00:00:00 +0000</lastBuildDate><atom:link href="https://joshkodroff.com/index.xml" rel="self" type="application/rss+xml" />
<item>
<title>CI/CD for Infrastructure as Code with Terraform and Atlantis</title>
<link>https://joshkodroff.com/post/2018_07_04_ci_cd_pipeline_terraform_atlantis/</link>
<pubDate>Wed, 04 Jul 2018 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/post/2018_07_04_ci_cd_pipeline_terraform_atlantis/</guid>
<description>In this post, we&rsquo;ll go over a complete workflow for continuous integration (CI) and continuous delivery (CD) for infrastructure as code (IaC) with just 2 tools: Terraform, and Atlantis.
This post originally appeared in the 2nd Watch Company Blog.
What is Terraform? So what is Terraform? According to the Terraform website:
Terraform is a tool for building, changing, and versioning infrastructure safely and efficiently. Terraform can manage existing and popular service providers as well as custom in-house solutions.</description>
</item>
<item>
<title>Terraform Repository Structure</title>
<link>https://joshkodroff.com/post/2018_07_04_terraform_repo_structure/</link>
<pubDate>Wed, 04 Jul 2018 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/post/2018_07_04_terraform_repo_structure/</guid>
<description>When IT organizations adopt infrastructure as code (IaC), the benefits in productivity, quality, and ability to function at scale are manifold. However, the first few steps on the journey to full automation and immutable infrastructure bliss can be a major disruption to a more traditional IT operations team&rsquo;s established ways of working. One of common problems faced in adopting infrastructure as code is how to structure the files within a repository in a consistent, intuitive, and scaleable manner.</description>
</item>
<item>
<title>Barcamp 2017 Talk Slides: All About DevOps</title>
<link>https://joshkodroff.com/post/2017_10_16_barcamp-2017-talk/</link>
<pubDate>Mon, 16 Oct 2017 17:55:13 -0400</pubDate>
<guid>https://joshkodroff.com/post/2017_10_16_barcamp-2017-talk/</guid>
<description>Here are the slides from my BarCamp Philly 2017 talk &ldquo;All About DevOps&rdquo;. We got into what the DevOps movement is, what benefits it can bring, and touched on how you might get started at your organization.</description>
</item>
<item>
<title>Barcamp 2015 Talk Slides: Bronze Bullet Architecture</title>
<link>https://joshkodroff.com/2016/03/20/barcamp-2015-talk-slides-bronze-bullet-architecture/</link>
<pubDate>Sun, 20 Mar 2016 21:04:32 +0000</pubDate>
<guid>https://joshkodroff.com/2016/03/20/barcamp-2015-talk-slides-bronze-bullet-architecture/</guid>
<description>Way back in November, I gave a talk at BarCamp Philly. BarCamp Philly is a local unconference and one of my favorite events in the Philly tech community. If you&rsquo;re in Philly, or a few hours' drive away, you should definitely check it out. There&rsquo;s all kinds of talks on all types of subjects, from the technical to the decidedly non-technical.
In the talk I gave, I coined the phrase &ldquo;Bronze Bullet Architecture&rdquo; to describe my technical approach to building message-based, domain-driven line of business software, and explained you how my professional experience helped me arrive at this style.</description>
</item>
<item>
<title>An Elegant Abandoned Cart Email Using NServiceBus</title>
<link>https://joshkodroff.com/2015/08/21/an-elegant-abandoned-cart-email-using-nservicebus/</link>
<pubDate>Fri, 21 Aug 2015 20:30:59 +0000</pubDate>
<guid>https://joshkodroff.com/2015/08/21/an-elegant-abandoned-cart-email-using-nservicebus/</guid>
<description><h2 id="abstract">Abstract</h2>
<p>Some of the toughest requirements to model in enterprise development are business rules that involve the dimension of time. In this post I&rsquo;ll show you how to fulfill those types of requirements in an elegant, testable, and scalable way using a message-driven style with <a href="http://particular.net/nservicebus">NServiceBus</a>.</p>
<h2 id="tldr">tl;dr</h2>
<p>If you&rsquo;re familiar NServiceBus and specifically its <a href="docs.particular.net/nservicebus/sagas/">sagas feature</a>, you can check out <a href="https://github.com/jkodroff/nsb-abandoned-cart">the code on GitHub</a>. Of particular interest would be <a href="https://github.com/jkodroff/nsb-abandoned-cart/blob/master/src/Server/Saga.cs">the saga</a> and <a href="https://github.com/jkodroff/nsb-abandoned-cart/blob/master/src/Server.Tests/SagaTests.cs">its tests</a>. There&rsquo;s also a <a href="https://github.com/jkodroff/nsb-abandoned-cart/blob/master/src/Client/Program.cs">console app client</a> that will let you play around.</p></description>
</item>
<item>
<title>Making Entity Framework More Unit-Testable</title>
<link>https://joshkodroff.com/2015/08/08/making-entity-framework-more-testable/</link>
<pubDate>Sat, 08 Aug 2015 09:56:22 +0000</pubDate>
<guid>https://joshkodroff.com/2015/08/08/making-entity-framework-more-testable/</guid>
<description><h2 id="abstract">Abstract</h2>
<p>For developers using <a href="https://entityframework.codeplex.com/">Entity Framework</a>, unit testing code that depends on the <code>DbContext</code> class is not the easiest thing. If we&rsquo;re interested in doing unit testing, we need to be able to use an in-memory (&ldquo;fake&rdquo; in <a href="http://martinfowler.com/articles/mocksArentStubs.html">Martin Fowler&rsquo;s terminology</a>) version of <code>DbContext</code> comprised of lists of objects so that our tests do not hit the database. This series of posts takes you through my process in getting to a facade on top of Entity Framework that results in testable code and tests that are fast to write.</p></description>
</item>
<item>
<title>Getting More Inolved with OSS via Up For Grabs</title>
<link>https://joshkodroff.com/2015/06/11/getting-more-inolved-with-oss-via-up-for-grabs/</link>
<pubDate>Thu, 11 Jun 2015 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/2015/06/11/getting-more-inolved-with-oss-via-up-for-grabs/</guid>
<description><p>I attended the <a href="http://dotnetfringe.org/">DotNetFringe</a> conference in Portland in April, and I met some some fantastic people, learned a ton, and had an overall great time. The conference was focused on open source in the .NET ecosystem, and I’m definitely a fan of both of those things.</p></description>
</item>
<item>
<title>The Josh Test: A Sorta-Objective Way to Analyze New Opportunities</title>
<link>https://joshkodroff.com/2014/02/08/the-josh-test-a-sorta-objective-way-to-analyze-new-opportunities/</link>
<pubDate>Sat, 08 Feb 2014 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/2014/02/08/the-josh-test-a-sorta-objective-way-to-analyze-new-opportunities/</guid>
<description><p>I find myself in the incredibly fortunate position of having a skill set that is greatly in demand. I get calls and emails on a near-daily basis from recruiters for all types of jobs. (If you don’t think that having recruiters contact you on a daily basis is a good problem to have, I would advise you to consider the employment circumstances of anyone else who is not a medical or IT professional, i.e. the other 99.999% of the world.) While there’s a lot to like about my current position, it would be foolish to be closed to new opportunities if the right one comes up. But how do I now what “the right opportunity” looks like? My answer: The Josh Test.</p></description>
</item>
<item>
<title>It's High Time to Make Windows Development Cheaper</title>
<link>https://joshkodroff.com/2013/05/14/its-high-time-to-make-windows-development-cheaper/</link>
<pubDate>Tue, 14 May 2013 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/2013/05/14/its-high-time-to-make-windows-development-cheaper/</guid>
<description><p>At work, I use a MacBook Pro and boot into Windows directly using BootCamp. I tried using <a href="https://www.virtualbox.org/">VirtualBox</a> but key bindings not matching up drove me nuts and I was trying to get a project launched on a tight deadline, so I went with what I knew.</p>
<p>As a reward for launching said project, I got myself a nice new MacBook Pro for home use with a Retina screen, and 16 GB RAM. Professional tools for a professional developer and whatnot.</p></description>
</item>
<item>
<title>DDD Lesson: Break Out Your CRUD</title>
<link>https://joshkodroff.com/2013/04/21/ddd-lesson-break-out-your-crud/</link>
<pubDate>Sun, 21 Apr 2013 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/2013/04/21/ddd-lesson-break-out-your-crud/</guid>
<description><p>In my view, there’s 2 main principles that distinguish Domain-driven design as an approach to solving problems:</p>
<ol>
<li>All solutions to problems are framed in terms of the value delivered to the stakeholders for the effort required.<!-- raw HTML omitted --></li>
<li>The core of the code is a model of the business process, and it <a href="https://en.wikipedia.org/wiki/Code_refactoring">evolves with time</a> as the developers’ understanding of the business with time.</li>
</ol></description>
</item>
<item>
<title>About</title>
<link>https://joshkodroff.com/about/</link>
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
<guid>https://joshkodroff.com/about/</guid>
<description>Josh Kodroff is a technologist living in Philadelphia. He works as a Sr Cloud Consultant at 2nd Watch, a professional services and managed cloud provider with organizations in all stages of cloud adoption, from startups to large enterprises, with a focus on software delivery and application modernization.
Josh strives to express his dedication to craftsmanship in 3 ways:
An emphasis on quality and integrity in order to deliver the best long-term value to stakeholders.</description>
</item>
</channel>
</rss>