teleren/devto huggingface dataset:
Hi, I'm Brandon Doyle
Tags: introductions
Published: 2017-05-02 00:59:25

---
title: Hi, I'm Brandon Doyle
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 4 years.

You can find me on GitHub as [bjd2385](https://github.com/bjd2385)

You can find me on Twitter as [bjd2385](https://twitter.com/bjd2385)

I live in Rochester.

I work for (currently seeking employment)

I mostly program in these languages: Python, C, Bash, and I'm super interested in learning more about Haskell!

I am currently learning more about astronomical data reduction and pipelines.

Nice to meet you.
Hi, I'm Sholto Maud
Tags: introductions
Published: 2017-05-01 23:49:46

---
title: Hi, I'm Sholto Maud
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 12 years.

You can find me on GitHub as [shotlom](https://github.com/shotlom)

I live in Brisbane, QLD, Australia.

I am currently doing a PhD in philosophy and deep learning.

I mostly program in these languages: Perl, Node.js/javaScript, Python

I am currently learning more about Tensorflow.

Nice to meet you.
Document Model? 
Tags: nosql, mongodb, documentmodel
Published: 2017-05-01 21:35:55

---
title: Document Model? 
published: true
description: a non-specialist view of the Document Model in MongoDB.
tags: NoSQL, MongoDB, Document Model
---
Well, this is a repost of my blog post on Medium about the Document model. [Please check it out](https://medium.com/@compuhosny/oh-no-document-model-why-couldnt-you-say-json-from-the-beginning-8c9018213e4a).
The Role Of Reverse Engineering Legacy Products in IOT applications
Published: 2017-04-30 23:50:08

---
title: "The Role Of Reverse Engineering Legacy Products in IOT applications"
published: false
description: Discussing what reverse engineering can bring towards IOT projects.
tags: 
published: true
---

## Problem

I was given a very interesting use case for my final project. The idea was to help the science department build a mini web server that allows students to do remote experiments. The machine in question was a TOC Analyzer that was physically controlled by vendor software and connected via serial port. This TOC Analyzer also came with software to be installed a computer that would used to send commands to it.

## Solution

The solution was to first see if it was possible to get an API or SDK for sending commands to the TOC. This rendered unsuccessful as we really couldn’t find it anywhere and we thought contacting the company would delay us by a lot. In the end, we decided to reverse engineer the serial communication protocol  and implement in C++. This would give us our own personal SDK to the TOC which we could customize to own specifications.

## Tools
To begin doing this we needed a few items.

- A USB to Serial Port Adapter
- A Virtual Serial Port Sniffer
- A C++ development environment. 

## Process
The process during this reverse engineering was a mixture of repeated experiments and pure luck. I divided commands of the TOC protocol from a feature perspective. The TOC would exchange data based on whether you were starting the TOC, doing an experiment with the TOC or shutting down the TOC. Finding out what the essential bytes where was the difficult part. I hoped all I had to do was change the value and notice which byte data changes but it is a bit difficult when multiple bytes also make that change. It is hard to isolate which data means what. Good thing we managed to decipher large parts of the protocol and we managed to get it working. 

The end idea was to build a small server on top of our SDK, this way it would be able to receive data from TCP for remote commands to perform actions on the TOC.

{% youtube rjN5n793e_E %}

## Conclusion

A few cons about this process is that you are not 100% sure if what you have is robust. There could be some part of the data which changes the whole meaning of your byte mapping. The checksum could be wrong because of the time and all sorts of things. However, it is worth investigating to when you have no specifications around a legacy product but you want to revitalize it. Reverse engineering gives you a better understanding of the application because you repeatedly know what makes it tick
Hi, I'm Aaron Alexander
Tags: introductions
Published: 2017-05-01 20:56:05

---
title: Hi, I'm Aaron Alexander
published: true
description: Just saying hi
cover_image: 
tags: introductions
---

I have been coding for 12 years.

You can find me on GitHub as [aaronjustcode](https://github.com/aaronjustcode)

I live in Wilmington, North Carolina.

I run Peloton Development Company

I mostly program in these languages: HTML, CSS, Javascript, and PHP.

I am currently learning more about Electron.

Nice to meet you.
Hi, I'm Sam
Tags: introductions
Published: 2017-05-01 19:28:31

---
title: Hi, I'm Sam
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I code some apps on my free time and I'm working on a project called #DAISEE (http://daisee.org).
I'm interested in Blockchain technologies and Python.

You can find me on [Twitter](https://twitter.com/SamR1) and [Github](https://github.com/SamR1)

Nice to meet you.
Hello World
Tags: personal
Published: 2017-05-01 16:23:36

---
title: "Hello World"
published: false
description: My First Post
tags: personal
published: true
---

Alright let's do this!!

First of all, let me say this post was months in the planning. Like every card-carrying procrastinator out there, I *really* wanted to write this post way back in  March. Or was it February? But it always kept finding its way to that elusive wasteland known as the *back burner*. 

Until now.

Until I realized I was fortunate to have so many opportunities to interact with inspiring people, attend innovative events and engage in interesting discussions - but was held back by the need to write that *perfect post*. 

I have been inspired greatly by a number of women speakers, bloggers and activists who have put themselves out there, sharing both their successes and their failures, embracing their imperfections as simply a vital step in personal growth. I've often asked myself: _how do they do it?_ How do they come across as authentic and empowered without feeling vulnerable or second-guessing their decisions?

As a parent, I worry constantly that in our pursuit of false perfection, we send a terrible message to our kids on what success means. Instead of fostering self-confidence and celebrating individuality, we try relentlessly to fit into someone else's definition of success. So the message that "failure is a necessary step to self-improvement" is one that has begun to resonate greatly with me for many reasons.

### About My Goals

For me, the key was to realize that writing was about self-expression first and not about catering to any audience. So in my case, I want to start by seeing this as something I am doing for an audience of one: *me*.

I want to document interesting events or inspiring interactions I have had. I want to capture my thoughts on various topics but in a manner that allows me to revisit them later and understand (and fix) my own gaps in understanding. 

And I want to document my failures - not to sugarcoat them (and pretend they didn't happen) or obsess over them (and let them define me) but to frame them in the context of that moment so that I can potentially revisit them later and reflect on their truths (or falsehoods) with the benefit of time and perspective. 

And hopefully, as I document, reflect and revisit my own journey, I will cross paths with other users and learn from their journeys too.

### About Me

That's a tough one. After nearly two decades spanning industry, academia, consulting and community, I find it hard to put myself in a box or attach a label. Instead, I think that there are three traits that define me:

 * I like to build things to help people { products & communities }
 * I like to help people to build things { training & mentoring }
 * I'm a proud parent who believes in equality, empathy and enterprise


Alright -- I think that's enough pontificating for now. 
Time to ship it!! 

(The good thing about an audience of 1 is that the user testing is easy)
Why Code Reviews are Important
Tags: programming, learning, react, collaboration
Published: 2017-05-01 16:09:33

---
title: Why Code Reviews are Important
published: true
cover_image: https://thepracticaldev.s3.amazonaws.com/i/9ktv1hgyw1bb1hmjfqb5.png
description: Code reviews are as much for the reviewer as they are for the author. Here's how I used code reviews to learn React and Redux as a junior dev.
tags: programming, learning, react, collaboration
---

Ah code reviews... That dreadful, tedious task that interrupts your focus and takes time away from meaningful work. I can’t count how many times my code has sat in PR (pull request, if you’re unfamiliar with git lingo), lonely and waiting for approval by my fellow developers. It’s understandable that people put off code review for the reasons I mentioned above and many more.

As a junior developer (which I still am), I felt similarly towards code reviews. I didn’t like doing them. I thought, *Why am I reviewing code written by senior developers? It’s not like I’m going to catch any of their errors.* However what I didn’t understand at the time was that the code review was more for me than it was for them.

This became clear to me while I was reviewing a PR from a senior developer one day. While looking through their code I thought to myself, *Wow! This code is really well-written — it’s readable, modular, and well structured...*

I was learning React and Redux at the time, and if you know React, you’ll know that everything you do seems a bit weird at first. It’s hard to pick up on best practices on your own (at least I thought so), so being able to see how more experienced developers write components is a great way to learn how to write better code.

Once I was able to see code reviews as a learning opportunity rather than a check on my coworkers’ code, I was able to gain a lot of value from them. I began challenging my own way of writing code with the approaches of my more experienced coworkers and modifying my our approach along the way. I also began asking questions about why something was done a certain way if I didn’t understand it.
This change in mindset around code reviews meant I was able to pick up React and Redux much more quickly than I expected. 

Within just a couple weeks I was fully up to speed, completing similar amounts of work as the rest of my team and it was mostly because of the things I learned while reviewing the PRs of my coworkers.
Hi, I'm Barry O Sullivan
Tags: introductions
Published: 2017-05-01 15:13:45

---
title: Hi, I'm Barry O Sullivan
published: true
description: My introduction post
cover_image: 
tags: introductions
---

Here there,

I've been coding professionally for 12 years.

You can find me on GitHub as [barryosull](https://github.com/barryosull)

You can find me on Twitter as [@barryosull](https://twitter.com/barryosull)

I live in Gorey, Co. Wexford.

I work for DynamicReservations as their Lead Developer/Solutions Architect.

I mostly program in these languages: PHP/GoLang/JS.

I am currently learning more about Event Sourcing and Distributed Event Driven Systems.

I organise a PHP meetup group in Dublin, Ireland.

I plan to write more about software development, to get my ideas out there to see if they have merit, or to see if I'm wrong. Strong opinions, loosely held.

Nice to meet you.
Hi, I'm Umar Lone
Tags: introductions
Published: 2017-05-01 07:07:43

---
title: Hi, I'm Umar Lone
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for [number] years.

You can find me on GitHub as [UmarLone](https://github.com/UmarLone)

I live in [city].

I work for [company]

I mostly program in these languages: [languages].

I am currently learning more about [topic].

Nice to meet you.
Vertical Centering HTML Elements
Tags: css
Published: 2019-05-31 06:30:35

---
title: Vertical Centering HTML Elements
published: true
tags: [css]
canonical_url: https://www.prestonlamb.com/blog/vertical-centering
---

I dont' know how many of you have tried to vertically center HTML elements before, but it can be a big pain in the butt. A coworker had once given me some hints and a couple of CSS classes that I could use to achieve it. It really wasn't easy though, and hard to have other people come behind and know what's going on.

This is what my coworker suggested:

```css
.vertical-container:before {
	content: '';
	display: inline-block;
	vertical-align: middle;
	height: 100%;
}
.vertical-center {
	display: inline-block;
	vertical-align: middle;
}
```

This doesn't look wildly complicated, but you have to put the `.vertical-container` class on a parent element, but not the `.container` element. So essentially it looked like this:

```html
<div class="container">
	<div class="vertical-container">
		<div class="vertical-center">
			...
		</div>
	</div>
</div>
```

There are also some unintended side effects that can pop up, but don't always. Sometimes the element that you want to vertically center ends up showing after the `.container` element, and the way to get around it is to set the `.vertical-container` element's `font-size` to 0. Then you have to reset the font size on individual elements inside the `.vertical-center` element. This is obviously not ideal.

## Flexbox

Today I started doing [@geddski](https://www.twitter.com/geddski)'s [Flexbox Zombies](https://flexboxzombies.com) course. It's great. I've only done about 10 minutes of the course, and learned that I could vertically center elements (without side effects) with three style attributes:

```css
.vertical-center {
	display: flex;
	flex-direction: column;
	justify-content: center;
}
```

That's it. No nesting elements, no `font-size` hacks, nothing. Just a simple class with some simple flexbox properties, and that's that. You can also center align a `div`, or put it at the beginning or end of the row, as well as top or bottom of the column. I know there is a lot more to learn, and I'm excited to understand and implement it. I can already see how making a responsive column layout will be much more simple with flexbox than it was before!

Anyways, flexbox seems to be legit, and will make awesome layouts much more achievable. Go check out [Flexbox Zombies](https://flexboxzombies.com) so you can learn how to use flexbox as well!
Hi, I'm jbwebtech
Tags: introductions
Published: 2017-05-01 05:08:47

---
title: Hi, I'm jbwebtech
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 17+ years.

You can find me on GitHub as [jbwebtech](https://github.com/jbwebtech)

I own [Paesano Design, Inc.](http://paesanodesign.com/) and live in California.

I'm a Microsoft guy, currently catching up with AngularJS.

Nice to meet you.

Ciao.
Hi, I'm Christopher Whalen
Tags: introductions
Published: 2017-05-01 00:31:24

---
title: Hi, I'm Christopher Whalen
published: true
description: My introduction post
cover_image: 
tags: introductions
---

<img src="https://thepracticaldev.s3.amazonaws.com/i/w1jf3n0ugy4e4u4d3ukx.jpg">

Hello, I'm Christopher Whalen. I'm a Senior Signals Intelligence Analyst for the USAF in Omaha, NE. I graduated with a Mathematics B.S. from the University of Rhode Island, and have taken several basic CS courses; I have a novice-level understanding of Java, C++, and Python. My work interests relate to big-data analytics and automation, and my personal interests include offensive (red team) security and penetration testing.

I recently created a GitHub account, [Christopher-Whalen](https://github.com/Christopher-Whalen). To start, I'll likely use it to keep track of what I'm learning, though I'd really like to get into contributing to open source projects down the road.
Hi, I'm Hani Gamal
Tags: introductions
Published: 2017-05-01 00:12:50

---
title: Hi, I'm Hani Gamal
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 20 years.

You can find me on Twitter as @hanigamal(https://twitter.com/hanigamal)

I live in Cairo.

I work for Maktabak Dot Net(https://maktabak.net)

I mostly program in these languages: PHP, C#, Java, Ruby, Python, JavaScript and many other languages.

I am currently learning more about BigData.

Nice to meet you.
Hi, I'm Klaus Donnert
Tags: introductions
Published: 2017-04-30 23:16:29

---
title: Hi, I'm Klaus Donnert
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding since 1980.

You can find me on GitHub as [klaus-donnert](https://github.com/klaus-donnert)

I live just outside Nashville TN.

I am a freelancer.

I mostly program in these languages: PHP, JS, and CSS.

I am currently learning more about node.js.

Nice to meet you.
Hi, I'm Adel Tahri
Tags: introductions
Published: 2017-04-30 22:03:22

---
title: Hi, I'm Adel Tahri
published: true
description: My introduction post
cover_image: 
tags: introductions
---

I have been coding for 8 years.

You can find me on GitHub as [AdelDima](https://github.com/AdelDima)

I live in Algeria.

I work for PixelDima

I mostly program in these languages: PHP/JS/JAVA.

I am currently learning more about WordPress/JS.

Nice to meet you.
At Offline Camp 2
Tags: offlinefirst, report
Published: 2017-04-30 18:58:01

---
title: At Offline Camp 2
published: true
description: Sunday at Offline Camp
tags: offlineFirst, report
---

Be proud of me, for I also survived the Sunday of __Offline Camp__.

The Saturday evening was rather nice, because there was much beer and s'mores. 

I also learned that some people here have hard feelings about technology (about databases and front-end frameworks in particular) and that some people seem less considerate than they really are. 

What happened today? 

Well, there were only 2 sessions I were today.

## A11y & Offline First

We were talking about the accessibility (a11y) of offline first applications and if this approach makes it better or worse.

The idea was, that it makes the a11y better for people with bad internet connections, but the SPA structure of such applications often leads to bad a11y, for example if screen-readers aren't notified about page changes.

## Alternatives to CouchDB & PouchDB

Most people here seem to use [CouchDB](https://couchdb.apache.org/) & [PouchDB](https://pouchdb.com/) for their offline enabled applications and the idea of this session was to find the alternatives. 

There only were like five people in the session and no one of us really had much idea about the marked. But well, we had internet and simply searched for things. 

We found platforms like [Realm](https://twitter.com/realm), also one of the participants were involved in developing his own solution called [remoteStorage.js](https://remotestorage.io/). 

We also found a few others and I will write a bigger recap of the whole session later, with a link to an awesome-list of these alternatives.

When we presented our recap, I overheard some comments about some of the technologies we found. Mostly stuff people are saying here all the time, that most databases are simply bad with conflict resolutions.

Luckily a database developer is at the camp, namely [Bob Newson](https://twitter.com/rnewson). So I just asked him how other databases are so bad at conflict resolution and what CouchDB does differently. Maybe I will write something about this in the next weeks, but the gist is, CouchDB simply doesn't force any resolution on you, it simply keeps both versions of your document and shows you one of them, but all replicas get the same and if you don't want that, you can switch to the other one OR implement the merge of the two versions yourself. Reason being, conflict resolution in distributed systems depends highly on use-cases/application logic.

Guess I'm a bit smarter now. Thanks Bob!

## Passion Talks

The passion talks were rather cool as well, not so much world saving today, but more practical advice.

Someone talked about how practice makes you better at something, but that you also need to practice the right things, or else you just get better at doing things wrong. 

Another one was from an Ableton developer, who built an web application where you can learn how to make music. No other tools needed. He also demoed a web application that interfaces with a Push2 via WebMidi, which was pretty cool I think.
Create-react-app react-router and Heroku
Tags: react, heroku
Published: 2019-01-23 03:34:58

---
title: Create-react-app react-router and Heroku
published: true
tags: #react #heroku
canonical_url: http://www.darraghoriordan.com/2017/04/30/create-react-app-react-router-and-heroku-the-404-gotcha/
---

I’ve been putting together a React app and I needed cheap, fast hosting so I went to put it on Heroku.

### Configuring Heroku

The community have put together a build pack for create-react-app. You can basically deploy in 2 minutes.

Assuming you have the heroku command line tool already configured the following gist describes the commands to setup the build pack:

[https://gist.github.com/darraghoriordan/c3d355237246df395bd4c5ffedf002d1#file-heroku-sh](https://gist.github.com/darraghoriordan/c3d355237246df395bd4c5ffedf002d1#file-heroku-sh)

### Configuring your application

This is magic but there is still some configuration needed on your application for routing. If you use react router you will get a 404 from nginx when you try to directly open a route.

The heroku build pack deploys your site on heroku as a static react application so you have to tell heroku that for ALL routes, it should just go to your root/index document so react-router can handle the application routing. The default root document in create-react-app aps is index.html

So to fix your site on Heroku hosting add a file called “static.json” to your root folder (next to packages.json) with the following configuration.

[https://gist.github.com/darraghoriordan/008569feb8cc319e338ad11fb68a4647#file-heroku\_config-js](https://gist.github.com/darraghoriordan/008569feb8cc319e338ad11fb68a4647#file-heroku_config-js)
Hi, I'm Juan Pablo Duque
Tags: introductions
Published: 2017-04-30 16:30:05

---
title: Hi, I'm Juan Pablo Duque
published: true
description: I'm a systems engineering student (aka computer science in Colombia), I like programming contests, investigation and solving problems.
cover_image: 
tags: introductions
---

I have been coding for 3 years.

You can find me on GitHub as [Diuke](https://github.com/Diuke)

I live in Barranquilla, Colombia.

I'm currently a student at Universidad del Norte, Colombia.

I mostly program in these languages: Java, Javascript.

I am currently learning more about web development and investigation.

Nice to meet you!
Hi, I'm David Leger
Tags: introductions
Published: 2017-04-30 14:37:33

---
title: Hi, I'm David Leger
published: true
description: My introduction post
cover_image: 
tags: introductions
---

![Header reading: David Leger - Coder // Designer // Creator](https://thepracticaldev.s3.amazonaws.com/i/zff6ozuqsp0pfjzl1uv0.png)

I have been coding for 7 years.

You can find me on Twitter (and other platforms) as [@davidleger95](https://twitter.com/davidleger95) or at my website: www.davidleger.me

I live in Fredericton, NB, Canada.

I work for Cvent.

I mostly program in these languages: JavaScipt.

I am currently learning more about making the world a better place through creativity and code.

Nice to meet you.
Hi, I'm Aravind Putrevu
Tags: introductions
Published: 2017-04-30 10:15:06

---
title: Hi, I'm Aravind Putrevu
published: true
description: Hello !
cover_image: https://thepracticaldev.s3.amazonaws.com/i/1kwmb5vhjh74n9sl3gtt.jpg
tags: introductions
---

I have been coding for 9 years.

You can find me on GitHub as [aravindputrevu](https://github.com/aravindputrevu)
and twitter as [aravindputrevu] (https://twitter.com/aravindputrevu)

I live in Bengaluru, Silicon valley of India.

I work for Intel 

I mostly talk to my Computer in : Java,JavaScript,Python.

I am currently learning more about ethics and values in Programming [OR] why we are coding !

Nice to meet you.