Sign in

Dennis Mellican
★★★★★

Instead of selecting a record, a minifigure is selected for this Jukebox Portal.

Photo credit: Dennis Mellican

The “toys-to-life” LEGO Dimensions console game was discontinued in October 2017. Now you can bring it back to life as a jukebox by connecting the USB toy pad to a Raspberry Pi and running the Open Source “Musicfig” app. Listen to songs, albums, or playlists by placing a LEGO Minifigure on the LEGO Dimensions pad and enjoy the audio and light show!

LEGO Dimensions set transformed into an interactive jukebox music concert stage.


The Slack bot running on Raspberry Pi’s that secures a smart home.

Watch the CCTV footage of the would be burglar:

He was tricked. There is no dog and no one was switching lights on.

Behind the scenes, a motion sensor on a smart security camera starts the fake dog barking on a wireless speaker, then triggers smart lights to switch on inside the house and finally…


Introducing the Launch Tag concept.

Credit: undraw.co

For times when you want a Linux system to start up with adhoc functionality, use the EC2 Launch Tag concept to control how a service is started.


Use Slack View to live stream a Slack channel on a web site.

Slack View demo: https://mellican.com/badactors

The latest version of Slack View now features Real-Time-Streaming of Slack channels to multiple Slack View web pages. You can personalize Slack View with themes and deploy Slack View as a Docker container.

Slack View leverages Python and Flask-SocketIO to achieve real time streaming of Slack events. The rendered Slack View page becomes a read only display of Slack channel.

A custom implementation of Slack View at https://mellican.com/badactors, live streams a #bad-actors Slack channel of hackers probing and attempting to infiltrate a system. This demonstrates how Slack…


The account lockout Denial of Service attack scenario

Illustration by Michele Paccione / Shutterstock
Illustration by Michele Paccione / Shutterstock
An example of a twit* being locked out

A common security compliance rule (such as PCI, ISO27K, NIST) is to apply an account lockout for a period of time after several failed login attempts. The primary aim is to throttle brute force attacks, where the bad actor is attempting to programmatically guess a password using a dictionary.

This attack vector can also be used to perform a Denial of Service (DoS) attack, where the bad actor’s aim is not to gain entry but to prevent a legitimate user from their own system. Such as effectively stopping a CEO, President or…


Use Slack to show your Systems are constantly Under Siege by Bad Actors like “Steven Seagal”.

This article does not refer to individuals who can’t act. Instead, refers to someone who attempts to infiltrate a system with malicious intent.

A common attack vector is to brute force their way in by guessing an account password systematically. There are various ways to deploy countermeasures, such as Intrusion Detection Systems or fail2ban which are both effective.

Their attempts to probe your network can be made highly visible using TCP wrappers and integrating it with your instant messaging system, in this case Slack…


All aboard the Chat Bus! Image: Dennis Mellican

Chatbots are not easily deployed for high availability. Typically, applications can be scaled by using a Message Queue, which is a way for applications to send messages between one another reliably. By leveraging Slack as a Message Queue discover how you can design or even retrofit your slack bot to become highly available and scalable out of the box.

For cloud-based bots, serverless infrastructure can be used to attain high availability. However, bots that require greater local control and visibility commonly lack a distributed program design. These types of bots could use an active-passive configuration to achieve high availability, where…


Troupe is a group of chatbots working together on a shared activity.

Troupe is a distributed chatbot program, that can be tasked to monitor and control your home. Troupe allows smart home devices to be controlled directly or indirectly via Slack. My 5-year-old uses an Amazon Dash button to toggle his bedroom light on or off. The Dash button when pressed, issues a webhook call to Slack. A Troupe chatbot answers the call. I prefer to interact directly with the home via the messaging app. Mark Zuckerberg had the same thoughts too when he was Building Javis.

Dennis Mellican

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store