Tag: personal

Episode 3: Fishies, Legos and Play-Doh

Description:

On this episode of the podcast Script discusses where he has been for the last few months, a personal project he is undertaking to help learn new technologies, and answers a question posed to him by listener Brandon Kuenzi in the comments on Episode 2 about the changes he has seen in the last 20 years.

Subscribe:

google-play-badge

Transcript:

Welcome to Episode Three of the Script Van Winkle podcast! My name is Script Van Winkle, but my friends call me (singing) “maybe”.

Now on the last episode of the podcast I was telling you all about everything I learned at a great conference in North Carolina and what an awesome and growing tech community there is there.

In the first episode I was telling you how I was trying to get a job with a company in a nearby city but how in the end I decided not to apply at that company. That, it turned out was a good thing. Just a few weeks later, me and the Mrs. pulled up our roots in the Mid-Atlantic region, and set them in the soft, fertile, though sometimes sandy, soil of North Carolina. Nice how I tied those two things together.

Now, all of this is just really a lame excuse as to why I haven’t put out a podcast in over two months. But hey, it takes a long time to unpack a microphone. I’m just saying.

On the plus side, you can consider this episode my holiday gift to you. So Merry Christmas, Happy Hanukkah, or whatever other meaningful holiday you celebrate this time year.

So in this “present” tation (see what I did there) I am hoping to accomplish two things. Which would be two more than I’ve accomplished so far this week. First, I’ll tell you about a personal project that I’m going to be using as a vehicle for learning new technologies. Second, I’m going to try to fulfill the request of one of our listeners. After all, I’m rarely asked for my opinion on things.

When you are learning new technologies, especially when going through tutorials, you inevitably encounter a variety of sample programs you’re supposed to try out. These range from the ubiquitous “Hello World” programs to more complex ones showing you what the technology can do.

Now I HATE sample programs! Ok, I’m not talking about the examples that you find when you’re reading through a tutorial. I love those examples! Especially, because when you’re looking up how to do something, if it doesn’t have an example it can be really frustrating!

What I’m talking about is when they give you exercises to do to create sample programs for you to try out what you learned. Now don’t get me wrong, the sample programs probably are the best way to reinforce what the tutorial taught. After all, they give you a controlled environment where you don’t really have to consider other factors that may ultimately play into your application. It’s just a simple sample example. Nice alliteration if I do say so myself.

It’s those programs that I can’t stand doing. And I’ll tell you why. If I’m going to be investing my time writing a program it needs to have a real world application. Or, more than likely, something I HOPE will be a real world application that somehow never quite makes it big.

My hard drive is filled with “real world applications” that I never seemed to get launched before the next big “real world application” came along. And if you saw the number of the domain names I have registered and keep registered today just because I don’t want to let them go….it’s insane. But I digress.

Now there are several web technologies I want to learn including microservices, which I mentioned on the last episode, Node.js, and AngularJS. Plus, I really want to push the limit of keeping that hard line between the frontend and backend. So I decided to find a personal project that could accommodate all of the above and give me an opportunity to play with each one of the technologies.

My son is a Boy Scout. In fact, this year he earned his Eagle rank! Hey, a proud papa can boast can’t he?

His scout troop is affiliated with a Catholic Church. One of the biggest fundraisers for the troop every year is a fish fry they host one Friday during the Lenten season. Last year I joined a parent committee that works on the fundraiser. One of my first contributions was to help with the promotion of the event by creating a new website specifically for it as well as creating a Twitter account to promote it via social media. This went together with another member’s creation of both an Instagram and a Facebook account.
Now I am a web developer not a web designer. So I went out and found a great HTML5 template to use for the website. Because it’s a simple informational site, I quickly hand coded a couple of static HTML pages. To them I added some really delicious looking photos of the dishes they would serve provided to me by a member of the committee who is also pretty awesome professional photographer.

I then used ColdFusion to build a form for which users could order tickets. Once this form was submitted, the information was stored in a local MySQL database. Then the user was handed off to PayPal to complete the financial side of the transaction. Once they successfully completed the stuff in PayPal, they were redirected back to our site. Paypal included a bunch of information in that request so that we could identify what the transaction was and then update our database table to show the customer had paid.

I also created an admin side of the site where the orders could be viewed and the information taken from there to add to the list of information from the tickets the scouts physically sold.

Now given that it was the first year for online sales and we didn’t really get a chance to promote it too much the number of orders wasn’t exactly overwhelming but it did contribute to one of the most successful fish fry’s they ever held. My job the day of the Fish Fry? Manually thawing a couple hundred pounds of frozen fish….a chore that was decidedly Haddock forming.

Now if you’re wondering why I’m talking about a project I did in the past but I’m supposed to be talking about a project I’m going to work on in the future to learn all this new technology, it’s because I’m going to use that project as the basis for this one. You see, the chairman of the committee was so impressed at what I did he had an idea. One of the biggest problems he has on the day of the event is figuring out just how many tickets they can sell to people who didn’t purchase tickets in advance. Up until now he has just tried to look at how many people seem to have come to the event, and guestimate what they likely have left.

But now his idea is to make a system that has all the ticket sales recorded, allows staff to check off people as they come in and in real time match that up with the inventory of the food we know we had to begin with, and give a relatively accurate count of how many pre-sales can still be sold.

So I decided that I’ll take on that challenge. And yes, my idea of a “real world app” is one that is going to be used by one person one day year. I know what you are thinking there junior developer but you can keep your opinions to yourself.

Besides, the jokes on you. Because you’re going along for the ride.

Now this time around we’re just going to focus on the initial planning steps. Dividing the application into logical parts and then kind of figuring out which technologies play what roles for each part.

Obviously the first logical part of the application already exists. The public facing website that we built last year. And while one could be easily tempted to go in there and rebuild it with newer technologies, we are going to leave that as is for now which means it’s going to be a combination of HTML, CSS, a little bit of vanilla JavaScript and some delicious pictures.

The second part of the site is the ticket order form. That’s is also using HTML, CSS, and JavaScript, but now adds on ColdFusion and interaction with a MySQL database. Once again we will let this one ride as it is for now.

The third major part is integration with the PayPal API. That’s working so we’re going to leave that one for now. And we will do the same for the admin side of things though we may build a few additional pieces to it to support adding inventory into the system.

Now things get interesting as we look at the newer functionality. A great thing to keep in mind with this new piece is where we are going to be using the application. All the previous pieces are used by users from various locations making it perfect for a web based architecture.But for this new stuff that is not the case. At the venue used for the fish fry the Wi-Fi is very spotty at best, and we pretty much know that this is going to be used by one person on one computer.

Right about now I can hear all you VBers or .Neters screaming “Hey! This is perfect for a Windows app!” I can also hear all you mobile developer screaming “Hey! iPhone or Android app!”.

Hey, I hear yah. But just remember here I’m a web developer looking to improve my web development techniques. So I want to stick with that technology. In this case, there is really only one logical choice, JavaScript baby!

I can hear a few of you out there going “Hey Script! You know that JavaScript is client-side? How are you planning on interacting with the database and get and set all that information you’re going to keep on the fishies and the shrimp and the other good stuff?”

To you I say, “Forget about it!” Because as you may or may not know Node.js is designed to do JavaScript on the server-side. You can use Node to do a lot of the same server-side functions like interact with the database. Now, Node has to reside on your server. Due to the limited network connectivity at the venue we are pretty much better off running this app local on a laptop anyway. We will have to install Node on that but again it’s one machine and we are controlling it.
This is also where that whole separation of front end and back end comes in the play. On the backend we’re gonna be doing things like pulling order records, updating the flag to say the how many meals been picked up and running calculations against the inventory to come up with a number of tickets we still can at the door.

So Node.js makes the most sense. We run a little node server on the laptop which could handle all the database interaction. We can even split these tasks into little microservices which I think would be fun to do. But what database are we going to use?

Now on a future episode I would like to go into a deep discussion of the differences between SQL and noSQL database. At least what little I know of. But for purposes of this discussion let me just give me a real quick synopsis. SQL databases are the kind most people generally think about.
You create structured tables, ones in which the records contain the same fields formatted the same way. You find your records by indexing and matching up records from one table to another all done through the structured query language, aka S Q L, aka SQL(sequel).
NoSQL on the other hand has a lot less structure. You create collections of objects and those objects can be any different type of data, mix-and-match, you name it. Generally you want to keep the same thing just so you can keep your sanity but it gives you more flexibility. One of the most commonly used ways to use NoSQL is to take data objects in your program and save that entire data structure to the database. You can use a lot less complicated statements to set and pull your data.

So let’s think about it. We’re gonna have a list of orders and are really going to just have to pull them by one key value… their ID right. And we are not going to be doing any sort of in depth searching on the orders. I mean it’s pretty cut and dry.

Also we are going to have a list of the foods we track. You know, the fishies and the shrimp. They’re going to be individual records we just need to pull up and update the count of the ones that we use. Also cut and dry. Not to mention we’re gonna put a copy of the database and run it locally on this computer. Nosql engines tend to be a little bit lighter than say MySQL and MSSQL.

The one downside to using NoSQL here is that on the website last year we collected the information in a MySQL database. To be able to move that data over to a local copy on our laptopwe are going to have to do one of two things. First, we can convert the website to using noSQL instead of SQL. While that shouldn’t take a ton of time, it violates our idea of not touching what was already working. The other option is to write some sort of function that crawls through the SQL tables, builds data structures from the results and stores those in the NoSQL database. That certainly wouldn’t violate the first principal about not touching the stuff is working. It would also be a rather interesting exercise in creating a microservice to do this.

However, I’m curious to get your opinion on it. So in the comments let me know your arguments for going with SQL or NoSQL for this application.

So to recap so far, we’re going to have a database sit locally on this machine whether it’s SQL or NoSQL It’ll have the most up-to-date information as of the date of the event. We’re going to put Node.js on this machine to handle backend functions and DB interaction, with those steps possibly divided up as little microservices just for kicks.

Now for the frontend. To control all the interactive screens the person checking people in at the fish fry would use, we could pretty much go straight HTML and JavaScript. While it would be fun to try out a little AngularJS here, it might be a little extra complication we don’t have time for. But if the opportunity presents itself we should think about taking advantage of it.

The committee chair also said he thought it be a really cool idea if the tickets they sold had barcodes or QR codes so they could be scanned as the people come up to the ticket desk. It would pull up their order and the person working the desk would check off the meals that are being picked up. It’s a cool idea and worth considering. I just have to decide on how complicated that is.

So that gives you an overview of the program that I’m planning on using to try to figure out new technologies. As of this recording it’s already the middle of December actually even later just a few days before Christmas. The Fish Fry is held in March. So I don’t have a whole lot of time to get this together. As I work on it though, I’m going to try to bring you in on it and let you know some of the things I discover along the way. And, of course, I welcome any input you have, just leave it in the comments on the website at ScriptVanWinkle.com.

Now coming up I’m going to fulfill the wish of one of our listeners who left me a comment on the website and fill you in on my opinion on a particular subject. That is coming up right after this.

(GitReal fauxmercial)

Welcome back to the Script Van Winkle podcast. Now listener Brandon Kuenzi’s comment on Episode 2 was very complementary. He mentioned how much he enjoyed the podcast and hopes that I continue it well into the future. As a long time podcaster I can tell you that kind of feedback means the world to me and I thank you so much for it. And yes junior developer I get that this is only the third episode of the podcast. But trust me I’ve done hundreds of episodes of other podcasts so I know whereof I speak.

Brandon also expressed an interest in getting my opinion on how the industry has changed over my 20 plus years in it. That is a request in which I would be happy to oblige.

Now being an old grizzled developer, well maybe not so old, but grizzled like a bear. I have seen so many changes it would really be hard to cover them all in one shot. So for now let me focus on one simple aspect of the industry. To me, I think one big change is the inversion of thinking on the development and programming of websites and applications.

You see, in those early days we didn’t have very much to work with. So you would start with the text that you wanted to show on the webpage. Then you would add some HTML tags around them to emphasize certain points of text and maybe, MAYBE add a few simple graphics to punch that up a bit.. You would save those into static HTML pages, usually one for each page of your website. When you had an element of the page that you wanted to make dynamic you would replace that hard coded text with either an active service page tag or a ColdFusion tag that would render that dynamic information. In fact, you would often put other ColdFusion or ASP code that computed the dynamic information right at that same spot. It was our version of just-in-time info.

Hey, in those early days we really didn’t have JavaScript or even JScript so those weren’t even a consideration.

So essentially, you were starting with your finished product. You know, the static content you want to get out there, and just dressing it up a bit either with style or a little bit of dynamic text.. And, doing whatever dynamic stuff you did when you needed it. It was pretty much a procedural way of doing things.

Now think about how we do it today. It’s more comparable to an object oriented environment. First we gather all the information we need from all the dynamic sources we need to get it from. This could be from databases or text files or even still some hardcoded HTML. But the point is we gather it and build the entire structure. Then using CSS, HTML templates and such, we llay out the format and combine it with the graphics and look and feel. Essentially we are starting with information first and styling second. Not to mention, where in the old days pretty much everything was in one big giant monolithic document, these days you try to make the files as small as possible and separate out and reuse assets and code as much as you can..

If you want a really bad analogy to describe the differences think of it this way. Twenty years ago a web page was like a big giant lump of Play-Doh. Everything we needed was pretty much in the Play-Doh and all we needed to do was kind of mold it, maybe take a piece from another lump of Play-Doh and mix it in, and maybe hang a couple of pictures on it.

Whereas today your building sites more like Legos. Lots of different specialized parts that are attached together through standard connectors to make the final product.

From Play-Doh to Legos, yeah I’d say that was a pretty big change. And don’t worry, I will resist the temptation to say I saw developers go from sculptors to blockheads. Hmmm, maybe I should look up the definition of the word “resist”.

And that’s all for this episode of the Script Van Winkle podcast. If you’ve got questions or topics you would like me to cover, drop me a line at script@scriptvanwinkle.com or find me on Twitter @ScriptVanWinkle. You can subscribe to the podcast in iTunes, Google Play, or on Stitcher. You can comment on this episode, see blog posts and find more info at scriptvanwinkle.com.

Thanks for listening and I’ll talk to you next time.

Episode 2: Meet, Eat, and Learn!

Description:

On this episode of the podcast Script discusses conferences in general and his recent trip to NCDevCon in particular.  He also has a great interview with Ben Nadel (@BenNadel)  who has a very popular blog on Coldfusion and Angular programming.

Links:

  • NCDevCon– An awesome development conference in North Carolina.
  • BenNadel.com – Ben Nadel’s blog with lots of great coding help as well as a jobs board and pictures of a virtual Who’s Who of the community.

Subscribe:

google-play-badge

Transcript:

Welcome to the second episode of the Wake Up with Script Van Winkle podcast!  My name is Script  Van Winkle, but my friends call me… only when they need something.

Now when you are trying to play catch up with the programming world, like I am, one really great way to do that is to attend one of the dozens if not hundreds of programming conferences put on each and every year. But how do you pick one? How do you afford to go? And just what the heck happens at one of these puppies?

By sheer coincidence, would you happen to believe, I just got back from an awesome conference last weekend in North Carolina.  So I might be persuaded to talk about some of what went on there.  And as a treat, I also caught up with Ben Nadel, who runs a pretty popular blog for those who program in ColdFusion or Node.js., so stick around for a sweet interview with him.

Ok.  So Webster’s defines a conference as “a formal meeting in which many people gather in order to talk about ideas or problems related to a particular topic (such as medicine or business) usually for several days.

Now I have no flipping clue why people insist on starting education discourses with a definition from Webster, nor why Emmanuel Lewis is considered such an expert in etymology. Yeah, that’s a real term there Junior Developer, look it up.

So last weekend I attended NCDevCon, an amazing developer conference in Raleigh, NC.  Now in its ninth year, this conference is held on the campus of NC State.  It was started and run by the Triangle Area ColdFusion User Group, but while there is certainly some ColdFusion specific content among its sessions, it covers a lot of other topics including Javascript, Nativescript, Mobile Development, CSS, database, testing, continuous integration….you get the picture. A wide swath of topics.

While conferences vary of course, most start off with a general session. This is where all the attendees gather in one big room, hear some housekeeping announcements and usually a keynote speech.  In the case of NCDevCon this is almost always a talk from their longtime sponsor Adobe.  Usually Adobe is giving a roadmap to the future of one of their products, usually ColdFusion.  This year though, Elisha Dvorak, Adobe’s ColdFusion evangelist, actually started off the talk by discussing microservices.  While not brand new, microservices is kind of the hot buzzword right now.  

Essentially, the microservice architecture is one in which you break up tasks in your application into smaller, logical, completely independent applications or services, which take input via an API (usually through REST protocols), and return data usually through JSON.  These services should be entirely stateless so that given the same input, they should return the same output.  And since they use network protocols in access, they should be completely platform independent, meaning each and every service could be written in an entirely different language and they should still all be able to work together.,Now, if that didn’t make any sense to you, don’t worry. I plan to cover microservices on an upcoming episode, because I do like the concept and am working on learning more about them.

Now Elishia’s talk did of course eventually divert to talking about current and future versions of ColdFusion. Personally, I am cool with that.  Even if you aren’t using CF or work at a company that is still stuck four versions behind, its still cool to see what they have elected to focus on in the future.

Now I did hear a couple of grumpy gusses complaining about the talk being too salesy.  But those same dudes didn’t seem to be complaining much when they were picking up their sweet FREE Adobe water bottles. And they certainly weren’t complaining when they were eating and imbibing at the Adobe sponsored after party. I’m just saying.  Sponsors help make conferences go. If it means you have to listen to a pitch every now and then who cares.  Get over it!  

After the general sessions, the breakout sessions usually begin,. Now a lot of conferences organize them into tracks, meaning that they have the schedule set up so that you can stick with one topic area should you want. For example, they may have a back-end track, a front-end track, and a mobile track.  At NCDevCon this year they didn’t have any definable tracks, but I figure that is because they had such a variety of topics to choose from.

For someone trying to play catch up, a conference like this offers a great opportunity to get schooled across the realm of programming.  Of course we are talking, in this case anyway, about an  hour a topic. It’s hardly enough to time to truly LEARN everything, but it definitely gives you a chance to wrap your arms around it and gives you a starting point for further exploration.

Case in point, there were a handful of sessions on CSS.  I hate CSS! Ok, I don’t hate it. And I do work with it in my projects obviously.  But sometimes when you are trying to nail down a look or a font, or size something to wrap it the right way, it gets flippin’ maddening!

On day 1, the first and last sessions I chose involved CSS. The first was actually a talk on how to convert desktop apps to mobile by Jessica Kennedy.  Jessica, unlike me, is a HUGE fan of CSS!  I sat in amazement as she showed some tricks that she recommends for being able to manage both a desktop and mobile application.  She won me over.   I actually started to get excited about the possibilities. I really need to revisit CSS. It looks like a blast!.

The last CSS talk I saw that day really showed how to press the boundaries of CSS. It was given by Brandon Kennedy, who as it turns out is very happily related to Jessica. Brandon and his chill preso showed what just a few lines of code can do to make sites come alive. Most of it was way over my head, but definitely something I will explore a lot more!  I am looking at CSS in a whole new light. And  I owe the transition of my opinion to the bold style of the animated couple……see what I did there?

Beyond the learning of course is the networking. Whether or not you are looking for future opportunities like I was, you  should always take the time to talk to other attendees. Or, if you are shy like me and don’t know how to start a conversation, just rudely insert yourself in an ongoing one and smile and nod a lot.  They may think you are weird, but keep those ears open and you may just learn something.

Now conferences generally are not cheap.  Most assume you are going to have your employer pony up the dough for it. But more and more companies are running on leaner and leaner budgets these days, so that is not always an option. One of the things I love about NCDevCon is its affordability. Its tickets this year were only $200 bucks, and I believe it was half that for the Early Bird registration.  Now I had to go on my own dime this year and wondered if I would feel I got my money’s worth. I did ten times over!  Well worth the price!

So to bring an end to this seemingly endless diatribe, let me simply say this. If you are trying to keep up with technology, keep pace with the industry, and feel out potential opportunities for future growth….conference it baby!  Find a local one or one in a place you would love to travel to  (like Vegas or something). But take the time and money to go. You will learn a lot, feel more connected to the profession, make new contacts who could be useful resources, and, if it’s anything like NCDevCon, enjoy some really amazing food!.

Now don’t go away….we’ve got a great interview with one cool dude…come up after this.

(BEGIN Fauxmercial: “Progeny.js”)

Announcer:

ARE YOU A PARENT? ARE YOU TIRED OF TELLING YOUR KIDS TO DO THINGS LIKE CLEAN THEIR ROOM, DO THEIR HOMEWORK, OR TAKE OUT THE TRASH, ONLY TO HAVE THEM QUOTE UNQUOTE “FORGET” TO DO IT?

WHAT IF IT COULD BE SIMPLER TO GET THEM TO RESPOND? WHAT IF YOU COULD LEVERAGE THE POWER OF NODE.JS TO GET IT DONE?  

IF YOU’VE BEEN FASCINATED AT HOW NODE JS CONTROLS QUADCOPTERS, AND INTRIGUED AT HOW IT OPERATES ROBOTS, YOU WILL BE SIMPLY AMAZED AT WHAT IT CAN DO FOR YOUR KIDS! INTRODUCING, PROGENY,  A NEW MODULE FOR NODE JS.

ONCE YOU HAVE INSTALLED PROGENY, PARENTING IS SNAP. JUST CREATE A INSTANCE OF THE PROGENY OBJECT FOR EACH OF YOU CHILDREN AND YOUR ON YOUR WAY.  PROGENY’S API INCLUDES METHODS YOU WILL USE OVER AND OVER AGAIN.

FOR INSTANCE YOU CAN TRY THE POPULAR CLEAN METHOD. JUST PASS IT ANY ARGUMENT LIKE “ROOM”, “DISHES”, “LITTERBOX”, OR EVEN “SELF” AND WATCH THE BUBBLES FLY!

YOU CAN PASS THE STUDY METHOD A SINGLE ARGUMENT,OR AN ENTIRE LIST OF SUBJECTS AND WATCH YOUR KIDS CRACK THOSE BOOKS!

PROGENY EVEN HANDLES REST! NO, NOT THAT REST! BUT THIS REST IS FAR MORE USEFULL! JUST CALL THE REST METHOD, PASS IT THE EXACT NUMBER OF MILLISECONDS YOU WANT YOUR CHILD TO SLEEP, AND ITS LIGHTS OUT! EVEN BETTER, YOU CAN PASS THE REST METHOD AN EVENT LISTENER….JUST IMAGINE THE FUN YOU COULD HAVE WITH THAT!

BEST OF ALL, PROGENY CAN BE RUN ASYNCHRONOUSLY. SO PLAN OUT YOUR KIDS’ DAY, EXECUTE THE SCRIPT, AND FORGET ABOUT IT. YOU CAN RELAX BY THE POOL, IN THE YARD, OR AT THE BEACH, SECURE IN THE KNOWLEDGE THAT PROGENY AND NODE JS HAVE EVERYTHING UNDER CONTROL.

PROGENY, A NEW MODULE FOR NODE JS. NOW NODE REALLY CAN DO EVERYTHING!

(End Fauxmercial)

(Interview with Ben Nadel)

Script:

I’m walking around NCDevCon here and you are not going to believe who I ran into. We’re talking the man, the myth, the legend, Ben Nadel himself. I’m telling you, if you guys don’t know who Ben Nadel is, welcome to ColdFusion programming because you’ve obviously been doing it for only two days. I’m telling you, if you ever, ever have a problem and you Google it, you are going to end up on Ben’s site. If you haven’t done that, good luck to you there. I guess the first question Ben, welcome by the way.

Ben Nadel:

Thank you, great to meet you, sir.

Script:

The first question I got to say is do you go looking for trouble or does it just find you?

Ben Nadel:

I’ve been very happy to come across a lot of trouble in my daily work. I just try to write about it as best I can and share solutions to the hurdles that I have fallen over and hurt myself on. I’m just a lucky man in that sense.

Script:

How long ago did you start all this?

Ben Nadel:

I’ve been blogging since 2006. It just started out as something … I don’t even remember how I started. I was just excited to learn. I love learning. It’s like I get up in the morning and I’m excited to learn. I’m excited when I get to try new things at work. I’m excited when things are difficult because it means something new to learn, something new to write about. It sort of just took a life of its own at some point and it became … Sometimes it’s a passion and sometimes it feels like a job. I get up in the morning and I do it. I just try to keep the momentum going. It’s been 10 years now, 2016.

Script:

I’ve always said for all the work you saved every programmer out there owes you two, three drinks, me included.

Ben Nadel:

I appreciate that. I’m still shocked when people say that. When people come up to me and they’re like, “I want to thank you. I read your website.” I’m blown away. I’m still surprised anytime anyone even noticed who I am.

Script:

That’s absolutely awesome. We know that for many years you were working on ColdFusion, but tell everyone what you’re working with now.

Ben Nadel:

We have teams that are more specialized doing what I do, but because I’ve been with my company for so long, I have a lot of tribal and historical knowledge. I can jump around and help fix bugs, help work on database bottlenecks, help work on code. I work in ColdFusion. I work in Angular 1.x primarily. I try to jump over and do a little React with the teams that do React. I work with MySQL. I do a little bit of Redis, a little bit of MongoDB. Just a little bit all over the place.

Script:

Showing off again, aren’t you?

Ben Nadel:

No, trust me. If you saw me doing any of these things, it would not be showing off. I can show off maybe in ColdFusion and some Javascript. Everything else is like just trying to not make it break.

Script:

One of the other things about your blog, I just hit you up for this, is you have been taking photos of people at conferences over the years. How did that all get started?

Ben Nadel:

You know what it is too is I am by nature a very shy person. The photos also help push me out of my own comfort zone. I feel like I got to psyche myself up to talk to people. I got to psyche myself up to ask for a photo at this point even all these years later. Part of it is how I try to grow as a person and part of it is, the fun part of it is community building. It’s just great. I love doing it.

Script:

You’re not even going to admit that it’s really about hit counts? I ain’t going to tell you how many times I’ve refreshed that screen just trying to get an idea of who’s who in the community.

Ben Nadel:

I will not fight any collateral benefit that comes from it, sir, absolutely not.

Script:

Just so you know, for all the listeners out there, if you want to see what I look like, I just got a great picture with him, which he’s already agreed he’s going to leave up as the primary picture for the next three weeks. Maybe, maybe not, we’ll see how that one works out. The other thing that you have on your blog, which is awesome, totally awesome, is the jobs board. I may or may not have gotten a few interviews that way. I refuse to talk about that, but I’m just going to ask how did that come about?

Ben Nadel:

I was charging I think like $199 at some point. I think I started charging $99. I got to a point in my life where I wanted to start giving back more, consciously, so I started to donate a portion of each job post to Kiva, which is a crowd-source loan site. That almost became more interesting to me than the job posts themselves. I finally just lowered the price to whatever covers the Kiva loan. I think now a job posting’s like $29. That just covers the $25, plus the processing fee to Kiva. It’s just exciting for me to be able to help the community in whatever tiny way I can, and then funnel that back into kind of a greater sense of the common good.

Script:

Has anybody ever thanked you for getting them a job that way?

Ben Nadel:

Yeah, a couple times. I almost sort of think it’s never helping, but I have a couple of times in person, people have said thank you. A couple of people have emailed me and said they’ve gotten it. It’s a low traffic. It doesn’t have a lot of posts typically, but occasionally it gets lucky. I feel really good about that actually.

Script:

I for one, absolutely thank you. I appreciate that. Ben, it was a pleasure to meet you. If you guys haven’t checked out his blog, it’s BenNadel.com. Believe me, you’ve probably found it by Googling it, but just check it out. Hang in there. Follow him on Twitter too and see the great adventures of his dog. What’s the dog’s name?

Ben Nadel:

Lucy.

Script:

Dog’s Lucy, vacation out in nice exotic places I see.

Ben Nadel:

Any opportunity to take the dog to the beach makes me happy. Chris, it’s wonderful to meet you. I really appreciate the opportunity to sit down and talk.

Script:

Thanks a lot, Ben. Take care.

So that wraps episode 2 of Wake Up! With Script Van Winkle. I want to personally thank Ben Nadel for taking the time to sit down and talk with the weird unknown dude shoving an iPhone in his face.  Seriously though I had wanted to meet Ben for a long time and he did not disappoint.  As you could hear a truly down to earth guy with positive attitude and pretty good programming chops to boot.

And thanks to the organizers of NCDevCon for graciously taking my money…….and giving me an experience back worth so much more.  The organizers and volunteers here are the best!  And, in case I didn’t mention it, all of the talks will be online shortly. So if you were there and missed a few sessions or couldn’t make the event at all, it’s all there for you to check out! Just visit NCDevCon.com.

Now, this was kind of a special episode. I’m going to get more into technical things in the next few episodes. So if you’ve got questions or topics you would like me to cover, drop me a line at  script@scriptvanwinkle.com or find me on Twitter @ScriptVanWinkle.  You can subscribe to the podcast in iTunes, Google Play,  or on Stitcher. You can comment on this episode, see blog posts and find more info at ScriptVanWinkle.com.

Thanks for listening and I’ll talk to you next time.

@NCDevCon Here I Come

NCDevConLogo

NCDevCon North Carolina’s Premier Web & Mobile Conference

Woo hoo!  Due to a change in plans I am now going to NCDevCon on September 17th and 18th in Raleigh, NC.  This is a conference that is small and intimate but draws some really top talent among its speaker pool!  It is also just pretty flippin’ cool!

In 2012 I attended my first NCDevCon (@NCDevCon) conference. In 2013 and 2014 I was one of the speakers! Not bad for a developer who just woke up.  NCDevCon is so cool they video every presentation and make them available online.  Just go to http://ncdevcon.com/page.cfm/videos-by-year. They have all the videos from the last several years in one easy to find place.  For my talks look for “Taming the Legacy Beast Turning Wild Old Code Into A Sleek New Thoroughbred” (video 8 of 2014), and “From Where do I Begin to What can we do next Turning Legacy Spaghetti Code Into a Delicious Lasagna” (video 4 of 2013)

I couldn’t make it in 2015 because it fell on the last couple days of my honeymoon.  Oddly enough, I could not convince my wife to finish the honeymoon there. Go figure.

I hadn’t planned on going in 2016 either.  But said, “Heck with it all! I’m not going to miss this!” So my conference ticket is bought. I booked a great AirBnB location in nearby Cary, NC (at least I hope it is great…stay tuned on that one). And, of course, I have already printed out the conference agenda and highlighted the ones I want to see.

Are you going to NCDevCon?  If so, leave a comment and I’ll surf name tags all day for you. Kind of like an awkward version of “Where’s Waldo?”

 

WAKE UP SCRIPT VAN WINKLE!!!

An alarm clockIt seems I fell asleep again!  Well, not so much in my professional life….just with this blog.  Look at the previous post. It was on January 14, 2014!

Why did I dust off the old blog?  Well, because I just might be looking for “new opportunities”. Seriously, this talented (well, experienced anyway) programming dude is looking to charge ahead.

What does that mean for you?  Well, if you are looking for a new teammate…it could mean a ton!  Just let me know (see  About Script Van Winkle for contact info). But if not, it means you will be at the very least seeing more (and current) blog posts from me. I am learning a great many things…all at once. And I will be detailing them in the coming weeks.

And there just might…MIGHT…be a new podcast in the offing.  Short, informative, and hopefully quite entertaining episodes are rolling around this creative mind of mine. I might just need to dust off the old microphone. Stay tuned for that one!

© 2018 Script Van Winkle

Theme by Anders NorenUp ↑