Form & List + ManDeeps Module Mashup
I had to create a portfolio and handle various formats so I tied the form and list module together with the LiveContent module from ManDeeps.com and used them to create the gallery. Technically I could have done this all with ManDeeps LiveContent module, but tying it in with the Form and List module makes it a little bit easier to maintain for content managers as well as gives me sorting, paging, and stronger control via CSS.
I’ve recently been researching Splunk and have been impressed with its power, flexibility, and ease of use. This blog is not intended to be a step-by-step tutorial, but rather is aimed to show some initial findings, overview one way to integrate Splunk with DNN, and paint the picture of some potential use cases.
So What is Splunk?
If you don’t already know what Splunk is, Splunk is a software company based in San Francisco that produces software for searching, monitoring, and analyzing machine generated big data via a web style interface. Splunk’s software helps organizations with operational intelligence, log management, application management, enterprise security and compliance.
Installing Splunk was simple and after clicking around a little while it was evident that Splunk is an intuitive software. From a UI standpoint, it makes logical sense and the flow is easy to understand. And it didn’t take long to see and understand how powerful it is.
As you may imagine, I began to wonder if and how I could integrate Splunk with DNN.
DNN + Splunk: One Way to Connect the Two
One of Splunk’s powerful features is that it can literally suck in all types, styles, and formats of data. This data can be machine data, log files, or even data from a REST API. There are several mechanisms for getting data into Splunk, but for this scenario, DNN’s web API implementation makes this an easy fit. On the DNN side, a developer can easily create a custom module using web services to expose any DNN data on an endpoint, which Splunk can then access. If you’d like to go the custom module route, check out my other blog series on module development. However, I did not write a custom module to test the integration.
For my initial investigation into Splunk I chose to use DNN Sharp’s API Endpoint module as it allows easy configuration of end points. Splunk is architected to consume any type of data and then it makes that data extremely easy to search, create visualizations and/or alerts with. These searches, visualizations, and alerts can be very basic or very complex in nature.
Another thing to note is that Splunk is architected to do this at scale and can easily parse enormous amounts of data. For example, every time you drink from a Coca-Cola “Freestyle” machine at a fast food restaurant, the data from your drink selection is logged and Splunk helps analyze the data, denote trends, and sends alerts. So yes, those Coke machines (all across the world) are connected IOT devices and Coke is a Splunk customer. See how Coke is using Splunk in the Splunk Conf 2014 Keynote replay session. Imagine how much data that is on a global scaled --> Splunk is helping Coke make sense of it.
Side note: Check out the blog I wrote on using Particle & Splunk to monitor temperature
So, my first goal was simple: see if I could get data from DNN into Splunk.
Sticking along the thought process of “data logs” I figured why not expose the DNN event log on an endpoint and see what I could make happen. Obviously, the event log may not be the best use case as site administrators can clear logs or processes to automatically clear logs sometimes exist. However, for this initial test it is a good candidate. To get the event log data on an end point I used the DNN Sharp API Endpoint module to make a SQL query on the event log view and return it as JSON.
With the event log now sitting out there as JSON on a DNN end point now all I needed to do was get it into Splunk…
Getting REST Data Into Splunk
The Splunk side of this configuration only took a few minutes to configure and keep in mind I’m no Splunk guru (read, it’s easy!). Splunk is similar to DNN in that it’s extensible. Splunk extensions can be found on the Apps and Ad-Ons sections of the Splunk website. I tell you this because ultimately, I followed a blog by Damien Dallimore on getting REST data into Splunk which used a modular input extension and that was all it took. I simply completed the required fields in the Splunk REST Modular Input as shown below.
I chose to poll the data every 60 seconds. With this information inputted I clicked save and returned to the Data Inputs screen of Splunk and chose my newly created data source.
BOOM! I was seeing DNN event log info in Splunk!
Searching, Visualizations, & Alerts in Splunk
With data in Splunk now I needed to proceed to using Splunk to make sense of the data. Splunk’s searching functionality makes it very easy to search for, well... anything you'd like. I’m not yet knowledgeable enough to fully explain all the capabilities, but what I can easily see is that you can select your data source, click on keywords, add them to the source's search criteria and set your desired timeframe for the search. It’s feels as if you have a Google search bar and all your searches are performed on your data source and intellisense & syntax highlighting for your search are provided too!
Once you have a search returning data you can then create visualizations or alerts. And yes, there are tons of visualizations provided by Splunk. These visualizations can be saved as reports or live as “panels” that reside on dashboards. Dashboards can have as many panels as you want and you can have multiple dashboards if you like. Also, you can easily embed these panels into DNN or any other location by clicking the “convert to HTML” link that each panel has. Being able to display this info anywhere you like is a neat feature. Are your mental light bulbs turning on yet?
So, I created a few visualizations based on event log data that was available. I created a number-based-visualization to show a large number that represented a count of 404 errors, a line graph showing the number of failed logins, and a chart showing the 404’s over time. So, in just minutes Splunk was already helping me understand that I have some issues going on with one of my sites. I believe one reason for the 404's is that I've renamed some pages that I think bots are targeting trying to register. Anyways, I've got work to do... don't judge!
Opening Up Possibilities
Now you may be looking at this and thinking to yourself, yeah this is neat, but I could create a custom module to make something similar to this happen. And you would be correct, but keep in mind the potential use cases, flexibility, and scalability of Splunk in comparison to a custom module. You could easily have all your customers as data sources and create dashboards to help you (and your customers) quickly understand what’s going on with your customer's applications. You could also do data mashups of data from a DNN website/web app, some IOT device out in space, and any other data source you can think of to provide valuable insight. And again, Splunk has no problem doing this with massive amounts of data.
With just a little research into Splunk it didn’t take long to get my mind spinning with all the possibilities within DNN and beyond. Think about your current DNN use cases, requirements of your customers, and the exploding IOT market and you’ll soon see the light.
Here are some ideas I had right off the bat:
As you can see the power and flexibility Splunk provides is really nice. I believe Splunk could be a game-changer especially for those with large amounts of data to parse, anybody in the IOT space, and much more. I hope this blog has provided you with an introductory glimpse into some of the capabilities of Splunk and even got you thinking of potential ways to integrate Splunk into your applications or customer's environments. I am still learning about it and hope you will too. I know that I'm just scratching the surface here in my initial findings.
Find out more about Splunk at http://www.Splunk.com
This past week we had another Queen City DotNetNuke User Group meeting. This meeting was unique in the fact that we had been promoting hard because DNNCorp flew one of their engineers out to speak to our group. Will Strohl arrived to Charlotte late last Wednesday evening. I gave Will a late night mini-tour of Charlotte and we talked as we rode around. Our meetings happen every 3rd Thursday so it wasn’t long before the next day came and it was meeting time.
At some point either Wednesday night or Thursday during the day I told Will that I thought we should open the meeting up and try a Google+ Hangout to see if any DotNetNuke developers in other areas would like to jump on to watch the presentations. Will was open to it and so I made a point to bring my laptop. When we got to Microsoft (our group meets at Microsoft Charlotte) we began setting everything up. We weren’t really sure how the video or audio quality would be, but we wanted to give it a shot. I put my computer off to the side of the table (near an outlet) on the front row. I turned the Google+ Hangout on and posted a link to it on Twitter. Within minutes I had my first taker. Gifford Watkins, a DotNetNuke phenom from Nova Scotia, jumped on to see what the fuss was all about. Shortly thereafter we had one more, then another, then another and before long we had a crew on a Google+ Hangout at least 20 minutes before the meeting began.
One of the first things I did was to give the guys a walk-around tour of the meeting. I got my laptop in my hands and showed them the room and the spread of food that we had at the meeting. I showed them the server rack near the door and randomly videoed people and talked with them as I walked around. It was kind of like a live virtual tour of the meeting. I did this to try to give the hangout attendees as much of a view of what was going on as possible.
The guys online were saying that they could hear me well and see the video clearly so it seemed like it was working out well. I told them we would do the best we could to make them feel like they were attending the meeting with us. To achieve that we also had one of our guys join the hangout. Will turned his laptop and joined the hangout and he interacted with the attendees via the chat window. One issue we had to overcome was when someone at the meeting would ask a question from the back of the room. Obviously the guys online couldn’t hear the question so Will would type it out to them in the chat window. He also typed some lines of code that one of the presenters used in his slide deck to make sure the guys could clearly read it. During the Hangout one of the guys typed that being a part of the Hangout was better than being at the actual meeting because they got to see the presentation plus they didn’t get in trouble for “passing notes”. His statement referred to the fact that the hangout attendees could read and write message to each other in the chat window. Will also typed to the hangout attendees and asked them if they had any questions for the speaker and sometimes they did so we were able to ask the speaker questions from hangout attendees as well! Remote Q&A with the speaker. Cool stuff!
In this picture you can see our speaker, Will Strohl, interacting with members of the Google+ Hangout
One note that is worth mentioning is that to make this happen the hangout attendees needed to turn their microphones down. I could see where some of the attendees were muting each other because they were getting feedback or their sound would steal the “stage” of the live speaker momentarily because that’s how Google+ Hangouts are configured. We just had to ensure that our speaker was the “live speaker” in the hangout and muting the microphones did this.
I will add one unique note as well. We had one DNN guy who wanted to attend the meeting. Robb Bryn was attending a meeting in the afternoon and was heading to Charlotte after his meeting. His meeting went over by a couple of hours so he was unable to make it. Though, when he found out about us opening it up to a Google+ Hangout he was able to join the hangout from his phone while driving down the road. I could literally see him in his truck riding down the road with trees passing him in the background of his driver’s side window. Eventually Robb finally pulled over on the side of the road and watched the whole meeting from his vehicle. Now that is some dedication and also some awesomeness that he was able to achieve via his Google+ app on his phone.
Richard English raising his DotNetNuke mug as he enjoys attending the meeting from afar
By the time the meeting ended we had 12 people total on the Hangout from Egypt, the Netherlands, Ohio, Cali, Pennsylvania, South Carolina, Florida, North Carolina, Nova Scotia, and a few more states up north. They weren’t all on at the same time and some came and went, but nevertheless it was very neat to open the meeting up and reach out to even more people via the Hangout. At the end of the meeting the guys on the hangout were all commenting on how everything went well and they said they really enjoyed it. Some remarked that they felt like they were there and that the video and audio was very clear. They could even read the text that was presented on the screen. We asked them if they thought joining the hangout added value or was beneficial for them and they all overwhelmingly remarked saying yes! They also requested that we do it more at future meetings.
Ultimately the decision to open the meeting up added a new dimension to the meeting. During the meeting we had a lot of energy in the room as well as online in the hangout. There were 2 different conversations going on at the same time and it was really cool to be a part of the live & virtual meeting at the same time. I think we’re definitely going to try to do more of these in the future and I would encourage any other user groups to give it a shot so that members in your community who aren’t in the local area can also attend and contribute.
Google+ Hangouts just changed our user group meetings for the good! And with that said…be sure to tune in to our next meeting!
Once you choose a font you can click to the “Type Tester” section to see how any specific words you type will look in your selected font. You can easily increase or decrease the font with the slider and you can also view how the font looks in various browsers on the “Browser Samples” tab as shown in the screenshot below.
Typekit uses “kits” to organize fonts for usage by designers. It’s really easy to create a new kit. Simply hover the kit section and click “Add New Kit”. As you can see from the screenshot below, I've created a kit for each site on which I use custom fonts. You can see how to add a new kit in the below screenshot.
Now that the "kit" is ready I need to add some fonts to it. Once you decide on a font you simply hover over the font and click “Add to Kit” and the font will be added to the kit for which you are currently viewing as denoted in the below image.
After you add a font to a kit you can go into the "kit editor" to further customize. Once you’re inside the kit editor you can customize various settings and styles that make the custom fonts appear on your site. You can simply add the CSS selectors that you’re using on your site & they will then render showing the custom font that you've just selected in Typekit. Notice in the below screenshot where I'm adding " .ANewSelector " class in Typekit's editor.
If you wanted to access specific weights & styles via your skin.css file you can click on the “Using weights & fonts in your CSS” option which will give you the below screen allowing you to copy the CSS necessary for your specific font & weight.
Now if you did click the “Copy CSS” option you would end up with some CSS that resembled the below:
font-family: "atrament-web",sans-serif; font-style: normal; font-weight: 400;
Once you click publish you will be ready to go. I should also mention that if you want to develop or test out styles locally you can also enter “localhost” in your kit editor settings and that will make your local sites work with the new custom fonts.
If you were concerned about how your styles would display on mobile devices you can click into the "Mobile Settings" section of the Typekit editor as seen in the below screenshot.
Now to make all of this active we need to click the big green “Publish” button at the bottom right hand corner of the kit editor screen which you can see in the below screenshot.
Then in my HTML Module I simply referenced the CSS classes that I specified earlier in the Typekit selectors area.
And that's all it takes to get everything lined up. You can see an example of the redesigned home page (running locally) using the custom font “Atrament web” that I selected earlier.
Typekit makes it extremely easy to use custom fonts in your site. If you’re a Creative Cloud member you should check it out. I hope this blog has been helpful to you with integrating custom fonts in your DotNetNuke sites.
As a sales engineer, I do a lot of online presentations for clients, prospects, colleagues and partners. When conducted well, online presentations and demos can be very effective sales tools. We strive to make our demos interactive.
The sales rep and sales engineer work together like a well-oiled machine throughout the demo. We encourage interaction and strive to be most efficient and effective as possible within the given timeframe.
Each presentation follows the same schedule. There are things to do before the demo, during the demo, then after the demo. In this post, I’ll share 32 tips to help you rock your online presentations.
Preparation is an obvious step. I mention it as a reminder that attendees are giving you their time, and their time is valuable. Be respectful of their time by thoroughly preparing and providing value to them. Ultimately a demo is like anything else in life: if you put your time and energy into it, then it will turn out well!
Agreeing on the agenda beforehand helps set expectations, reduces wasted time on the demo, and ensures that we only review functionality in which demo attendees are most interested. Since there is generally an hour or so for the demo, we need to make sure we hit the mark given the allotted time. By agreeing on the agenda beforehand, we drastically increase the productivity of the demo.
I learned this one the hard way. I had a webinar to present with a few hundred people waiting on me and as soon as I was made the “Presenter” my machine’s memory overloaded and I got the blue screen of death as my computer crashed. I had been working in numerous programs before the demo and apparently had nearly maxed out my memory and making the presenter passed the tipping point resulting in a few hundred people waiting awkwardly on me to reconnect. Now I restart my computer before demos so that my memory is not used up.
At some point, the presenter role will be passed to you. When his happens, the software (GoToMeeting, Join.me, or whatever you use) will ask you which screen you want to share. If you have a multi-monitor setup, this can become challenging if the monitors aren’t numbered or have similar names. Knowing your monitors names beforehand can reduce missteps. You don’t want to accidentally share to the wrong screen!
Be sure to reduce the number of potential distractions. Ever been on a demo and as soon as the leader shares their screen, you see their desktop icons and you start looking at all their files to see what they’re interested in? You are not alone, as everyone does it (admit it!).
In order to remove this distraction, be sure to hide your desktop icons or demo from a monitor that doesn’t have any application or document icons on the background. With fewer things to look at, your attendees will be more focused on what you show them.
Along the lines of removing distractions, you should turn off all pop-ups that occur on the screen from which you are presenting. The last thing you want is a sales person to send you a Skype message cracking a joke and have it show up during the demo. If you do leave Skype (or any messaging application) on, be sure you know the monitor on which the pop-ups occur.
Everyone knows it, but I’m still listing it here. Mute cell phones so that while you’re presenting there is not a constant vibration happening anytime someone emails or calls you.
If you use the same environment over and over, your browser’s cache can become corrupted. Browsers often try to remember passwords, cache content, cache URL paths, etc. and these cached items can sometimes trip you up. I usually clear my cache before each demo to ensure everything is fresh.
Just when you think you’re getting in the groove you will get a “tickle in your throat” and get choked up. You’re going to be talking a lot and a glass of water can save you in long-winded demos and in the moments that you may need to wet the whistle.
I always have a backup environment prepared should something go wrong with the primary environment. This takes more time up front, but it’s worth it. Having that backup environment can be worth its weight in gold.
Have a back-up plan for getting online. Yes, it only happens once in a blue moon, but what if you are scheduled to give a demo on that particular blue moon? Having a My-Fi or hotspot is well worth the investment.
Before the demo, try to find out who will be attending, so that you can speak the right language to them. You don’t want to talk about server architecture if you are demoing to the marketing team; you don’t want to talk to the server guys about lead generation. Tailor your story based on our audience.
This won’t apply to all of you, but I demo websites and online communities.
I make sure I have my site up and loaded in memory by the time they make me the presenter. I don’t want any time wasted on something to load up. So I keep my site “warm” just minutes before the demo so that the site is up and ready to rock by the time I get controls.
Some sites load URL’s from third party services, such as Google Fonts, Facebook, and Twitter. In my demo sites, I try to remove these external calls, so that if Facebook is having a bad day, it won’t affect my load time on the demo. There are scenarios where you have to rely on these external calls, but reduce them as much as you can.
During the introduction, attendees will tell you new information. In some cases the information shared during the intro can drastically alter what you present.
Listening and waiting to talk are two entirely different things. By listening, you can pick up things that may alter your demo. You can also pick up on personality traits, the mood in the room, and social queues that may help you better connect with the demo attendees. Listening carefully can help you establish better rapport with demo attendees throughout the demo.
We like to do a roll call during the intro of a demo as well. It never fails that there is someone in the room that we didn’t anticipate being there. It may be some manager, marketer, or developer who just happened to have another meeting cancel and was able to attend, but usually there is somebody either there or not there that we didn’t expect.
This again helps us to more accurately hone in the demo. If all of a sudden the CEO shows up on the demo, then we’ll be sure to add in the value proposition and benefits of each feature as executives don’t necessarily like to know the nuts and bolts, but ask the “why’s” and the “what results can we get” or “what does this help us do” type questions. Taking roll call will help you be on point with your delivery.
I ask the question early on as to whether or not the attendees have a “hard stop.”. This helps me know whether or not we can get long-winded with explanations or if we need to be very mindful of the time. Attendees may have an extra 10 to 15 minutes at the end and when that happens we know that we have more time for questions. Finding out the exact ending time of the demo early on can help you better manage time.
One thing I strive for is smooth transitions throughout the demo. Whether it’s transitioning from one subject to the next, transitioning from me talking to the attendees talking, or the transition of the “passing of the presenter role,” we want everything to flow as smooth as silk.
I ensure that our sales reps know how to pass the presenter in the meeting software we use.
I also tell them to pass the presenter as they are finishing up their last few points. This gives me time to get the presenter role and share the correct monitor. Otherwise, there is an awkward pause where everyone waits on me to get the presenter controls.
People present in different ways and that’s a good thing. Some like questions and interactivity and some don’t. Whatever your style is, set the tone early so that demo attendees know how to act and what to expect. I encourage questions, interruptions, and interactivity, so I put that fact out there very early on in the demo. Setting the tone will eliminate any guessing on the part of your attendees.
I encourage questions during the “Setting the Tone” stage because I want attendees to feel comfortable asking questions. At the same time, each question equals an interruption. The more questions there are and the more disruptions there are, the less smooth the demo goes.
Over time, you will begin to see where similar questions get asked. After you denote a trend in the same question being asked then just go ahead and answer the question before it gets asked. This will help things flow more smoothly. So, again, while I encourage questions, I hope to give such a thorough presentation that I remove questions just before they get asked!
On some occasions, there will be an attendee who is determined to get you hung up on some very minor technical detail. In these situations, it is your job to control the demo and not let the train de-rail. When these scenarios happen, it’s good to schedule these topics as “follow up” topics so that you can get your demo back on track.
Ever listen to a very dry presenter and wanted to be somewhere else? Don’t be that presenter! When appropriate, I like to inject humor. I crack jokes on the sales guys or on my own Southern accent. Your attendees will relax and build a stronger rapport and maybe even remember you more as a result.
Oh the echo, ooo… ooo… ooo… You know the echo that I’m talking about! We’ve all been on meetings where one person is using their speakers and their microphone picks up on the sound from the speakers which creates an echo effect. The person usually denies that it’s them, it makes things awkward, and then you have to recover and make things un-awkward again.
So what can you do about this? One option is to mute your participants. You can see which participant is making the noise and then mute them. In some meeting software, you can mute all attendees.
You may have heard of the “Power of the Pause” before. If we are presenting a demo and the attendees are not very lively, then I will show a feature and then ask them what they thought about that feature. Sometimes these pauses seem like an eternity and I just let the awkwardness hang until someone responds.
While it seems like a long time on my end, I know that attendees may be in a meeting room with the phone on mute and they may be talking to each other or going around the room seeing if anyone has a question.
When I first started giving demos I was scared to death of not knowing something. Though, not knowing something is perfectly fine. If someone asks you a very technical question there is nothing wrong with saying “Hey, I don’t know that answer, let me check with our engineers and then we’ll get back to you.” Admitting that you don’t know something lets the attendees know that you are human, builds credibility, and it also gives you something to follow up on. Following up continues the conversation and gives you another touch point with the lead.
Just as I’m doing here in this blog post, tell a linear story. Build on top of things you’ve already covered. Telling a sequential or linear story makes it easy for attendees to follow you and better consume the information you are presenting to them.
There will come a time when you have to present or demo something that is complex in nature. When this happens it’s best to try to describe these via multiple concepts. Sometimes people refer to concepts differently so using multiple descriptions can help ensure clarity and that everyone understands and is on the same page.
As you get close to the end of the demo, be sure to check on the clock. If you have a hard stop, you may have to cut a feature set short so that you can leave time for questions. Q&A is critical to the demo because there are some people who will remain quiet until everything is over and then they speak up. We want to ensure that we give those people ample time to voice their thoughts because they can provide great insight.
This is a chance for you to get vital information about the demo. Attendees’ comments can be key indicators as to the demo’s effectiveness and whether or not the lead is ready to move forward.
After the demo is over, we work hard to solidify next steps so we can keep the process moving forward. Identify any “deliverables” that you need to follow up on. Often times these deliverables are PDF documents, blog links, or videos. Summarize the set of deliverables and let attendees know when they can expect them.
Once you’ve established those deliverables be sure to follow up in a timely manner. This will help you keep the process moving forward while things are fresh on the demo attendee’s minds.
The reason we conduct demos is to progress a sale forward. If the demo is effective then the lead will want to continue the conversation. Ultimately the demo is a reflection of the presenter and the organization they represent. By fine tuning the process of a demo you can better move your deals forward! I hope these tips have given you some insight into things you can do to have your demos and presentations at their best.
I need to start out by saying that I’ve been inspired to do all this by some great guys in the Charlotte area and they are Dan Thyer, Mike Linnen, and Jay Ziobrowski… thanks for the motivation guys! I am either copying something creative I’ve seen them do or trying to imitate their passion, talent, and drive for Halloween and/or IOT projects. One day I hope to be as sharp and creative as they are.
Halloween & IOT
In 2016 I made a flame throwing pumpkin (copy-catting one of Dan’s inventions) and let’s just say some of the parents weren’t too keen on fire being near their kids and I also didn’t make any fans on the community’s HOA! Though, we all must start somewhere. In 2017 I went the safer route and made the AirGhost which is very similar to this year’s project.
The IOT Clown
This year I have created an IOT Clown. I did some testing and iterating on various ideas and concepts and there’s just no way to get around it… the thrust of compressed air brings a startling surprise and the best part is that it’s safe. We have tons of young kids in our neighborhood and moving a skeleton bone (which I debated in this early prototype) could likely hit someone, cause a toddler to fall, or trip someone up which could potentially lead to a spill on the concrete sidewalk. I don’t want to injure anyone or have some local parents mad at me, so I reverted to the compressed air, but then added a few more movements and changed the medium from a ghost to a clown.
Here’s a quick video of the end-product prototype just to show you where we’re heading… I’m going to dress it up a little more by Halloween, but you’ll get the gist.
Here are the main components I’m using for this project:
Here’s a video “talk-through” of the mechanical parts and power supplies being used.
Let’s Talk About Particle
The Particle platform is awesome! Check out this video of the Particle platform to learn more. I am admittedly a little bit behind all of Particle’s new innovations. I still need to learn about their Mesh and Argon solutions. Even though I’m not 100% up to speed I know you can do tons of creative stuff with the particle platform, their multiple IOT devices, and their integrated IDE. Since I’m using the Particle photon, we’ll start with it.
The Particle photon is a small IOT (internet of things) device that makes it easy to bring real world objects online. Particle makes it easy to setup the device and to connect to Wifi via a mobile app. If you want to know more about initially connecting and getting up and running with Particle they have some of the best documentation I’ve seen check out the doc, tutorials, and guides.
For this project all I really want to do is to move 3 servos… one for the head to spin, one for the head to roll, and one to push the handle on the air compressor. To do that we need to use the components I listed above + Particle’s platform + some code. I’ve listed out the components and just introduced the photon… now let’s look at some code.
Let’s Look at Some Code!
Particle’s platform is awesome, but we need some code to make things happen! I could easily copy and paste code here, but that wouldn’t help you understand the “why” and “how” behind some of the concepts. I hope to help you connect some dots here and as such I’ve cut a video walking through how I’m doing some of this stuff. The video shows code and includes videos of the device in action.
To all you senior devs… yes, the code shown in the video could be much better. I have not refactored anything yet, so the code is not nearly as efficient as it could be. And yes, I showed my handy Particle access token in the video… no worries though, by the time you read this I’ve already recycled it and created a new one.
Here are some relevant links:
So, with some disclaimers down and links shared let’s talk through the code some…
If you take the sum of all the info presented here that is how I’m making this happen!
And We Wait on Halloween!
Halloween is just about a week away at this point. If you have any questions or issues filling the gaps in this high-level tutorial, please reach out and ask your question. I plan on trying to video some of the fun at Halloween and posting any interesting reactions here just below this section… so stay tuned!
The Halloween Video
Check out some of the reactions we got from kids and a few adults!