Menu

Colin Devroe

Reverse Engineer. Blogger.

Den Temple attends NativeScript Developer Day[s]

Den Temple, fellow NEPA.js attendee, hopped a bus to New York City for a developer conference:

A three-hour bus ride and one sleepless night in a hostel later, I find myself attending NativeScript Developer Day in NYC.

Glad he shared his notes.

Reminder: attend meetups!

Attending September’s NEPA.js meetup

On September 12th, NEPA.js held its September meetup. Anthony Altieri presented on beacons – the typically small Bluetooth devices that “chirp” some very basic information multiple times per second allowing app developers to understand the proximity of a user. This allows for things like understanding where a shopper is in a retail space.

His overview of the devices, the spec, some of the software, and the differences between iOS and Android, and iBeacon and Eddystone – was a really nice introduction into the space. He did a great job.

I learned a lot during his presentation. Thanks to him for putting it together.

If you haven’t yet been to a NEPA.js and you live in our area – I implore you to check one out. It is consistently attended, always fun, and isn’t always focused solely on JavaScript. But even if it was, it is worth your time.

John George shares a solution

John George, fellow NEPA.js attendee:

I’m writing this because I discovered the hard way that .NET Core’s ‘dotnet run’ command is NOT meant to be production ready. My biggest headache was that my website shut down when I exited my shell. Not even the ‘disown’command would dissociate the running service from the user.

Posts like this by John often do not get enough attention. While it may not be applicable to you right now – dozens, hundreds, or perhaps thousands of people searching for this issue over the following months and years will be very glad that John took the time to do the write-up.

Kudos to him. More developers should write about their solutions.

Attending the August NEPA.js Meet up

The NEPA.js Meet up is really hitting its stride. Each meet up is pretty well supported – even in the summer – and the camaraderie and general feeling around each event is pretty great. Also, the Slack channel is pretty active.

If you’re within an hour or so of Scranton I’d recommend joining the meet up group, jumping into the Slack channels from time-to-time, and attending at least a few events per year. If you need help with any of these things send me an email.

Also, within the past few weeks we’ve seen a new group spin out of the NEPA.js group. A more general meet-and-work-on-stuff type of group created by Den Temple. This event fills the gaps for when there isn’t a NEPA.js group event.

This month’s presentation was by Ted Mielczarek. Ted works at Mozilla on build and automation tools for Mozilla’s primary product Firefox. He has, though, dabbled in a variety of other things at Mozilla like crash reporting and the gamepad web API. It was his experience building this API that spurred this month’s topic; Web APIs.

I remember jumping onto the web in the 90s and being blown away when I was able to put animated GIFs of X-Wing fighters on my personal Star Wars fan page. Today, web browsers support a variety of Web APIs that make the open web a true software development platform. There are APIs to control audio and video, to connect to MIDI-enabled devices, to connect to Bluetooth, VR and – of course – to allow for game controller input. There are lots of others too.

Ted did a great job showing demos of many of these APIs. Just enough for us to get the idea that the web has matured into a powerful platform upon which just about anything can be made.

Thanks to Ted for the work he put into creating the presentation and to all the attendees for helping the NEPA.js community thrive.

Franklin Court, Scranton, PA – July 2017

I hastily snapped this walking back to my car from July’s NEPA JS after-gathering at Ale Mary’s.

Published: July 19, 2017

Presenting at the July NEPA.js Meetup

Earlier this week my Condron Media cohort Tucker Hottes and I presented at the July NEPA.js Meetup. Our presentation was about automation and all of the things we can automate in our lives personally and professionally. And also how we employ automation in our workflows for creating applications and web sites using our own task management suite.

Here are just a few examples of reproducible tasks that you can automate that perhaps you haven’t thought about:

  • Your home’s temperature
  • Applying filters to multiple photos at once
  • Social media posts
  • Combining many files together into one
  • Deleting unused files
  • Calendar events

There are countless others. Perhaps you’re doing some of these things now. You might set a reminder for yourself to clean the bathroom every Tuesday. Or, your using a Nest to control your home’s temperature based on your preferences.

But there may be others that you’re not doing. Posting regularly to social media can seem daunting to some. But automating those posts can make it much easier to set aside time to schedule the posts and then go about your day. Or editing photos or video may never happen because you don’t have time to go through them all and edit each one individually. But these are tasks that can be automated.

We showed a quick demonstration of automating the combining of multiple text files using Grunt. There are a lot of ways something like this can be useful. Combining multiple comma-separated value (CSV) files that are reports from many retail locations, web development, and others.

Then Tucker provided a list of all the tasks we do when we get a new client at Condron Media. The full list can take a person up to 1.5 hours to “start” working on that customer’s project. So we’ve begun working whittling away at that list of tasks by using another task manager called Gulp. We call this suite of automation tasks Bebop – after one of the thugs from Teenaged Mutant Ninja Turtles.

Bebop is separated into the smallest tasks possible so that we can combine those tasks into procedures. Creating new folders, adding Slack channels, sending Slack messages, spinning up an instance of WordPress, adding virtual hosts to local development environments, etc. etc. Bebop can then combine these tasks in any order and do them much quicker than a human can clicking with a mouse. We estimate it will take 1 minute to do what took 1.5 hours once Bebop is complete.

Another benefit of automating these types of tasks is that you can nearly eliminate human error. What if someone types in the wrong client name or forgets a step in the process? Bebop doesn’t get things wrong. Which saves us a lot of headaches.

Here is the example Gulp task that we created to demo Bebop to the NEPA.js group.

We then asked the group to take 5 minutes and write down what they would like to automate in their lives. The answers ranged from making dog food to laundry to simple development and environmental tasks. Every one in attendance shared at least one thing they’d like to automate.

Tucker and I had a blast presenting but we enjoyed this final session the most. Similar to my event suggestions to Karla Porter earlier this year, I find that the more a group interacts with one another the more I personally get out of a meetup or conference. Presentations can be eye opening but personal connections and calm discussions yield much fruit for thought.

Thanks to everyone that showed up. I think we had 14 or 15 people. The NEPA.js community is active, engaged, and I’m very happy that it is happening in Scranton.

Attending February’s NEPA.js meet up

NEPA.js is quickly becoming my favorite tech-related event to attend.

On Monday night at the Scranton Enterprise Center a solid group of attendees listened and shared in Jason Washo’s presentation on whether or not to handwrite or generate JavaScript through transpiling. Jason is a big believer in transpiling JavaScript but he kept his presentation balanced by providing both the pros and cons of doing so. He also opened the discussion up to the group several times for feedback throughout his presentation. His presentation was very good, but the discussion was even better.

Afterwards topics began to fly regarding next month’s topic, future topic ideas, and how everyone really enjoys these meet ups. If you’ve been watching from your chair and thinking about attending – please do. You won’t regret it.

Attending January’s NEPA.js meet up

Aaron Rosenberg NEPA.js

Photo: Aaron Rosenberg presenting an intro to Node.js.

January’s NEPA.js meet up, the second monthly meet up for this group, was held on Tuesday evening at the Scranton Enterprise Center. This group, though only a few months old, is starting to get its legs underneath it and it is really great to see the community building.

The meet up’s discussion was centered around an introduction to Node.js and it was extremely well presented by Aaron Rosenberg. Aaron did an excellent job explaining the project’s raison d’être, history, and growth. One bit I especially liked was him showing how the browser’s JavaScript engine processed requests using Loupe. All-in-all an excellent introduction. (Link to presentation slides forthcoming. Check back here.)

Following Aaron’s presentation was Mark Keith showing some real live coding of a simple Node app using Express, a framework for building Node web apps, which quickly devolved slightly into discussions on scope, globals, “this“, etc. which was all good because the attendees were steering the conversation.

After the two hour meet up we made our way through the parking lot to Ale Mary’s for a beer or two. I’m looking forward to February’s meet up.

Thanks goes to Aaron and Mark for putting together the presentations and to tecBRIDGE for the pizza.

Attending the Wilkes-Barre Programming meetup

Osterhout Free Public Library

On Saturday I braved the frigid temperatures and attended a Wilkes-Barre Programming meetup at the Osterhout Free Library in downtown Wilkes-Barre.

I arrived a few minutes late – it was Saturday so of course I had to make myself some breakfast, enjoy my coffee, watch a little YouTube prior to getting out in the elements – and then I couldn’t find the room the meetup was in at the library. Once I found the group there was already 6 attendees and they were over an hour into their programming.

One of the attendees proposed a problem to be solved; convert a number into a Roman numeral using Python. I have little-to-no Python experience, and unfortunately not much was discussed at this meetup regarding the language (since it wasn’t for beginners) but I decided to try my hand at solving this problem in JavaScript. Here is my attempt (though incomplete). It can do the thousands and hundreds. I’d need a little more time to do the tens and singles but I ran out of time at the group.

I was happy to see this small group meeting in Wilkes-Barre. Some of the attendees mentioned they’d be visiting the #nepaJS meetup happening on Tuesday, which would be great. We need a lot more of these smaller groups and we need them all to be connected to the larger NEPA Tech group. In larger metropolitan areas these smaller groups would be hundreds strong and so consolidation wouldn’t be needed. We don’t have that here. So we need as much effort to be consolidated as possible. These small groups are where skills are honed, where partnerships and companies can be formed, where careers are forged. If you are someone that works in technology please consider joining one of these smaller groups. Even if you aren’t into programming. As they grow I’m sure they will end up fragmenting into more specific groups for the areas you’re interested in. The more support the better.

Attending the NEPA.js meetup

NEPA.js

On Tuesday I attended the first monthly NEPA.js meetup at the Scranton Enterprise Center. Mark Keith, a JavaScript developer who somewhat recently moved into the area, was the organizer and TecBridge – who organizes the NEPA Tech meetup group – helped to coordinate, host, organize and provide pizza for this brand-new group.

The common refrain in our area is that those of us who build software products, enjoy a good bit of nerdery, or want to reach out and socialize with people who know what a npm package is… are somehow alone. That simply isn’t true and the first NEPA.js meetup proved that. Twenty-five or so people made it out to this first meetup even with the snow. There were young and not-so-young, men, women, and even those that didn’t know what JavaScript was but knew it was important for them to understand it.

After some introductions Mark did a great job of giving an overview of what JavaScript the language was and how it can be used. He kept it high-level and, though I’m sure some didn’t understand everything he said, surely they left knowing more about what JavaScript is then when they walked in. We also had those in the room that have been developing with JavaScript for years and years – and even one Mozilla team member.

The group meets again next month and will continue to do so the second Tuesday of each month. The group also has a Slack channel so if it you want in just ping me on Twitter.