Talking Through Managed or Baked In House Continuous Integration (CI) and Delivery (CD)
Ok, we have several different scenarios and let’s say you’re the boss. In each of these scenarios we can assume that CI & CD are going to be mandatory to achieve the team’s greatest potential to deliver. So the question I’ll be attacking is, do we roll our own with Drone.io, TeamCity, continuous integration and delivery or do we get more advantage from utilizing a managed solution like CircleCI, Codeship, or related offerings. The following are the scenarios in relation to team size and project that you’re heading up:
Introduction to Drone.io
- Research & Learn: Drone.io Github Repo, Trying Drone.io, and Drone.io Docs.
- Objective: What Drone.io is and getting started.
I’ve dived into a new effort to figure out Drone.io, get it running, and if plausible contribute in some way to the project. This was kick started yesterday while I was speaking with Joachim (T @lindyhop && G @josmo) about some projects we’re working on. We discussed the design of Drone.io, how we’re using it on some projects internally here @PelotonTechio. I will, and others will be posting more on what we’re doing with Drone.io later, but for now, I’ve put together this introduction to what Drone.io is, and getting started with it.
The Data Diluvium, Getting Started
Welcome to the first of more than a few blog entries on Data Diluvium. Data Diluvium is a project I’ve started focused around generating data for the purposes of testing, capacity, or whatever other needs might arise.
Definition of data
- : factual information (as measurements or statistics) used as a basis for reasoning, discussion, or calculation
- : information output by a sensing device or organ that includes both useful and irrelevant or redundant information and must be processed to be meaningful
- : information in numerical form that can be digitally transmitted or processed
Definition of deluge which is the English version of the latin diluvium.
- a : an overflowing of the land by water. b : a drenching rain “a deluge causing mudslides in the area”.
- : an overwhelming amount or number
…thus Data Diluvium.
Autodidact Learning, For the Hacker at Heart
I always aim to be a good a student and teacher. To be a proficient and effective student and teacher, I’ve realized long ago I must strive to be good at both. Without this effort, I’d never truly understand or gain proficiency in either position.
In addition to striving to improve myself as a student or teacher, I always finds myself continuously learning. There is never a known end, as I’m always searching for a new best, a new level of proficiency, or even a new definition of what these things are. As such, I work diligently to take mental notes during my own efforts to become a better teacher or to improve my study as a student. It’s hard work, as most things that are worthwhile in life are. This hard work however, is definitely one of the top things I enjoy in life. Learning to me is something I cherish in the extreme!
On that note, here’s a few of the things that I’ve found that have helped me to learn effectively. I offer them as is, and everybody’s use may vary in effectiveness. If you’ve got any suggestions or practices of your own, please email, tweet (@Adron), or message me with them. I’m always happy to discuss new ways two to better my learning and teaching.
Buying a Leopard!
January 24th, 2017 UPDATE: After I wrote this, I spoke with the System 76 team and I’m getting the chance to go out and tour their Denver Headquarters. This happened well after I made my purchase, which all of the following was written after. But just for full transparency, I’ve added this note. Also, I’m aiming to get a full write up of my System76 trip put together with Denver tidbits and more! Until then, here’s the review…
In the trailing days of 2016, after having moved to Redmond, Washington I sat working at my desktop workstation. This workstation, which still exists, is a iMac with an i7, 16GB RAM, 256 GB SSD, and a 1GB Video Card with a 1TB secondary drive. The machine is a 27” all in one style design, and the screen is rather beautiful. But as I did a build and tried to run Transport Tycoon at the same time in the background the machine sputtered a bit. It was definitely maxed out doing this Go code build, putting together a Docker image build, and spinning it up for go live at the same time my game ran in the background. I thought, this machine has served me extremely well, at over 5 years old it had surpassed the standard 5 year lifespan of peak Apple oomf. At the moment, I thought, maybe it’s time to dig into a serious machine with some premium hardware again.
Microsoft's Scorched Earth History and The Current Crossroads
Microsoft is at a crossroads. If you’re not familiar with Microsoft at all, then just go ahead and skip this blog entry. It won’t matter to you anyway, at least not in the grand scheme of things. Only read forward if you’re curious about the conflict, the inner battles, and perverse juxtaposition that Microsoft exists within.
In this article I’ll break out various key points and call them out in quotes as an “assertion”. Such as this
Assertion: this is the assertion I’m making.
The article is also broken out with the historical context, then I’ll dig into the actual dichotomy of the juxtapositions that are in evidence.
December Coding & Hacking Projects | Top 5 Priorities
As of today I’ve made a few specific decisions that I’ll announce on January 1st of 2017. But for now I’ve got a slew of other things I’m going to attempt to knock out in the coming days. Hopefully I can make them useful and fun to read, if not, that’s cool too since I’ll make use of it!
- If you’re a regular reader you’ll get a few pieces of my opinion in the next 31 days.
- The plan is to produce one blog entry per week related to Go around the language, toolchain, and hacking around in IDEs and related tooling.
- I will be wrapping up several blog entries that you’ll see going live over on Codeship’s Blog. Topics include a bit o’ Jenkins, Go, and what you can get out of Codeship and their respective toolchain and services!
- Put together a sick new machine for myself and order by X-mas (no expectation of delivery, just ordering it! - also, blog it!!)
- I am putting together some other project work for some un-named companies (primarily because I’m unsure if they’d want me to mention what they’re working on at this time, so I’ll keep that on the down low). But by proxy I will have some reviews of several technologies.
So mark, and go. We’ll all see if I can knock these five things out by the end of December!
Notes on Go / Future Writings
Notes & Thoughts on Go:
So far I like Go. Primarily because it is just simple. Simply RTFMing it gets one pretty far without any fuss. The hardest part of the language to grasp seems to be the same things I often have issue with, which is the ecosystem has it’s own conventions are related things one just simply doesn’t know. It involves going through the docs and just remembering where the GOPATH is, where the build files go, what the go commands do with the toolset, and related things.
One thing that required a bit of fiddling around with to get figured out was writing tests for Go. The convention to mark tests and have them executed is actually super easy once you know the specifics of the toolchain.
I Want an Organized Go Project
After the last two cookbook style blog entries on a basic CLI with a simple service with Go there needed to be some organization around the projects. Here’s the next steps on getting those projects organized.