Chinese Laser Engraving System Stand

I recently purchased a Neje Master 2 20W engraving laser from Neje through their AliExpress store.  The unit shipped from a U.S. based warehouse and arrived in about a week.  I later found out, after joining a great Facebook group about the laser ran by Nancy McEntire, that I could have purchased the laser through her store at:  She also has supplies for engraving as well.  The FB group is full of helpful folks and various image files get posted almost daily for ideas to satisfy your need to smell the scent of burning wood or other substances.

Before getting my laser going, I realized I would need some sort of stand to either raise and lower the laser itself or the item to be engraved.  Tom Zaw made a very nice one using acrylic, CNC tracks for legs, and a small lab type scissor lift as shown in his youtube video.  I wanted to do something similar and leverage my existing supplies other than a scissors lift.  The photos below are pretty self explanatory, but here is a quick run down of what I used.  Considering I don’t have a shop of any sort and only hand-held electric circular and jig saws along with a drill to do this, I think it came out okay.  I also tried to create a home made air assist from an aquarium pump. The hardest part of all of this was making sure the top platform remained level.  The original design had four legs, but given my tools, I could only get three to match on exact length.  But the top platform for the laser seems very stable and seems to work fine with only three legs.

  • Parts:
    • Basic Grade Plywood (0.5″ thick)
    • Wooden Stakes for legs
    • L-brackets that came with Neje Laser Master 2
    • Lab Type Scissors Lift (Amazon)
    • Aquarium Pump which came with hose (Amazon)
    • Metal support for air hose was taken from the top of a hanging file folder
    • Nozzle is from a blunt tip industrial syringe (Amazon)

Top: Length-6″ (15.3 cm) X Width 14.75″ (37.5 cm) with 8.25″ (21 cm) notch for laser movement.
Base: Length-15.75″ (40cm) X Width 14.75″ (37.5 cm)
Legs (3): 7.25″ (18.5 cm)
Scissor Lift: Platform 7.9″x7.9″(200x200mm)
– Min/Max Height: 3.2″-12.2″(82-310mm)

First couple of engravings with Neje software. The lighter text was Gcode text insert, where the darker was Neje SW text insert.

A Seller’s Market for Bicycles


As I write this post, I just sold my fourth bicycle on Facebook Market Place. Actually, only one of the four was mine. Two were sold for a friend, one was Debby’s first road bike, and the last bike was my gravel bike I picked up at the going out of business sale at the local Performance Bicycle store. 

Sad, to see Performance go, but just like Wolf Camera who was up to their eyeballs in debt to camera manufacturers, Performance Bike did the same with the parent of Fuji bicycles to the point that, on paper, it looked better if the ASE folks bought Performance for debt owed. But, between the 2008 financial crash and a dying bicycle market in the “20 teens”, the only option was bankruptcy and the end of a once great local mail order startup of the 80’s. Fast forward to 2020 and lockdown, and everyone wants something fun to do that doesn’t cost a lot of money and gets them out of their house. The once forlorn toy of toddlers to teens has made quite the come back beyond the regulars made up of commuters, triathletes and fitness riders. For myself, I fall in the latter category as I ride to release stress and to control my type 2 diabetes. Since the start of covid-19 lockdown, I have tried to average about 60 miles a week on the road or greenways and lost a couple more inches off of my waist. For my 58th birthday, I wanted to do a 100K, but a covid-19 exposure meant self isolating for 10 days to be on the safe side and the timing has not worked out for a three or four hour ride since. But I suspect I will get one in before the weather cools off too much for my liking. So, if you have a bike that is in good shape and ridable, ride it! If you don’t think riding a bike is your thing, clean it up and put it on Market Place. Other than the two higher end carbon bikes I sold, the medium to lower priced bikes went within a day and people who wanted the first one I posted were trying to give me more money than I wanted to take both lower priced bikes. But, I respected the order in which I received the inquiries on the bikes as I wanted to reward speediness on responses. I am glad I did, as I suspect the first buyer was simply going to re-sell them after a some minor updates. Other than Pabl buying the Novara Strada, the Fuji Finest 2.0 went to April who I have since found out volunteers as a buddy for the Miracle League Baseball games where my nephew Quinn has played for many years. The high end Specialized Ruby Comp wasn’t a good fit for Casey, who lives near SouthPoint and the ATT, but a freshly minted 2nd Lt. from Fort Bragg came up and bought it after a quick test ride. I hope her twice rebuilt A1C strengthens up on the bike. My Mekk Pave XR 2.6 gravel bike, that I never could get to fit me, went to Mr. Garcia who travels the east coast from Florida to these parts (Research Triangle, NC, USA) where his sons live to buy bikes for himself or sell back home in Dade City Florida where he says the market to sell bikes is better than here.

So, don’t hold on to your bikes if you are not going to ride them. The local bike shops can’t keep inventory and if they have something, it may be really high end as my VP found out when trying to find some mountain bikes for he and his kids and their vacation trip to Colorado. If I was 15, I would have said, wait a year and put the money into a car, but that’s me. I have one more bike I am tuning up and will most likely keep. That’s my Mongoose Pro 2007 Otero MTB. I have not ridden it since I broke my left wrist on it in 2012. When I lowered it from the garage ceiling today, I had no rear brake and trying to refill and flush the hydraulic brake lines ruined my pads, so off to the store to get some new ones tomorrow. I know my neighbors will be happy as trying to re-seat the cleaned pads sounded worse than fingernails on a chalk board.

Gravel Bike 2017 Mekk Pave XR 2.6 (PerformanceBike Going Out Of Business Sale – Nashbar Photo Sample)

Unable to easily locate specifications, but did locate a marketing write-up…

Mekk Pave X 2.6 Gravel Bike. If pushing the limits on both asphalt and gravel – within the same ride – is how you prefer to spend your time in the saddle then the Mekk Pave X 2.6 Gravel Bike makes an exemplary choice to explore the roads less travelled. The disc brake-specific frame is constructed of a high modulus Toray T800 EPS carbon fiber and paired with a with a full carbon 1-1/8 to 1.5 tapered, disc brake-specific fork that are not only light but are plenty strong and deliver an exceptional ride quality. Stiffness abounds courtesy of the stout, oversized downtube and BB86 bottom bracket shell while slender chain stays help smooth out rougher terrain. To complement this exemplary carbon fiber frameset, Mekk has spec’d the Pave X 2.6 with the ever reliable 11-speed Shimano 105 components for the crankset, derailleurs, and cassette while braking duties are handled by the superb Shimano RS685 hydraulic disc brakes. The 2×11 speed shift/brake levers are Shimano RS685 – designed to offer renowned Shimano shift quality as well as handle a hydraulic disc brake set up. The 11-speed 105 crankset features 50/34T compact chainrings and Shimano’s four-arm design which reduces weight without sacrificing one iota of strength and stiffness. The bolt circle diameter is identical for compact as well as standard size chainrings meaning one set of crank arms can do it all – just swap out chainrings to mix things up while keeping the same crankset. The disc brake-specific aluminum wheels are Mekk’s own Saturae Galaxy XC featuring 140mm rotors front and rear as well as 24 spokes front and rear to better handle the demands of disc braking. Marquee brand names are smartly spec’d with the tires – the workhorse Continental Ultra Sport II in a 700x28c size – as well as the saddle – classic Italian craftsmanship and quality in the San Marco ERA Startup Power. Mekk is the brainchild of Mark Edwards (ME) and Ken Knight (KK), a pair of Brits with extensive experience in high-performance cycling in both the racing and production realms. – $2,199.99

This was a really nice bike for the money I paid, but I could never get the fit quite right as I was a little stretched out on the reach and the stand over could have put me in the soprano section if I wasn’t careful. Sold on Facebook Market Place in August 2020.

Dell XPS 8930 Woes

As much as I would like to say my experience with the new Dell XPS 8930 tower computer has been uneventful, I can’t say that and regret this purchase after my experience with Dell support and their attempted repair. The issue started at the end of May when the built-in SD Card reader quit working. I had just used it the week before to inventory a bunch of cards I had lying around. And better to know I can reformat them in the camera without worry I that had not yet imported them into Lightroom. The only updates applied to the system through Windows update or the Dell Support Assistant application. One of the Dell updates, probably the Bios, made the card reader quit working. On June 6th, I called Dell support and they had me try things and one was to kick off diagnostics on the card reader through the Support Assistant program. The test failed and Support made a remote connection to my system for further troubleshooting. By the time support gave up, the card reader could not even be located by Dell Support Assistant diagnostics as the device no longer showed as a testable device. Support left me to try a system restore to try and bring the device back. That effort was a no go initially, as Windows wanted the system is a special boot mode to do the restore. Once the restore was complete, still no card reader. I felt sort of abandoned by Dell Support and they finally sent an e-mail inquiring on the situation and I responded that the card reader was still missing. They gave me the last option of sending it in for repair stating the motherboard that provided the connection for the card reader was bad and would be replaced. I sent the computer to Houston for service and status updates were nil until they had the device several days. Finally, the status moved to diagnostics and repair phase and stayed in this status for almost a week. Finally, I get notified that the repair was complete and the system was about to be shipped back.

I got the system back on Monday, July 6th, and reinstalled my data drives. Upon booting the system, I was greeted by the initial Windows 10 setup prompts as the OS had been wiped and reinstalled. No biggie, I had my data drives and backups if needed. The real shocker here was all of the Dell provided support programs like Waves Maxx and Dell Support programs like Support Assistant were no where to be found. I visited Dell Support on the web and there were no needed driver updates, so I decided to test the SD Card Reader. I inserted a card and waited for Windows to recognize the card insertion only to never have that notice appear. I go to the Dell support website so I can get Support Assistant back and open it so I can check the card reader diagnostics, guess what? The card reader is not detected and therefore not present in the list of devices Support Assistant can troubleshoot. This is my photo imaging workstation and loses a lot of convenience when I have to give up a USB 3.0 port and deal with an external reader. All of my previous builds, I bought 3.5″ internal readers to mount within the front bays on the case for convenience and not dealing with an USB reader.

At this point, I am beyond frustrated. I read the Dell repair sheet that came back with the computer and it says they replaced the I/O daughter board for the card reader. Unless my 35+ years of being an IT guy supporting desktops from before Windows and now as a senior forensic analyst for a fortune 50 insurer has left me brain dead, there is no daughter board to be had on this computer. The only thing I can think they may be referencing is the actual card reader slot itself which is directly connected to the motherboard and provides nothing but the connection for the card via the slot. Unless I am mistaken, the brains for the reader are on the motherboard as support stated several times that the reader was part of the Intel chipset.

I vented with a #dellsucks tag on twitter and got the attention of @DellCares and now I have new support ticket. Not sure what they think I am going to do to assist them. I am pretty disheartened with my efforts and the non-repair of the system after shipping it to them and waiting. While some may think I am just using this experience to bash Dell, I have a Dell XP laptop that I was still using to program Ham radios until I virtualized it in May. I use a Dell Precision dual Xeon system as my on-net corporate forensics tower at work and it’s been very reliable and the company has moved from HP’s to Dell for all our endpoint PC systems. Other than quirks trying to boot systems via USB Linux so I can get a forensic image of the internal drive, these systems have been pretty solid in the first year of the transition. I guess the biggest unknown for me now is trying figure what Dell is going to want me to do next. I honestly don’t have the patience to deal with the situation and have bought a USB card reader so my photos can get imported. If Dell doesn’t offer a solution that requires more than minimal effort, I will investigate returning the system as defective to Costco or let the Costco concierge team deal with Dell to get a replacement.


As I stated, @DellCares opened a Dell Service ticket for me on the matter and I checked the status and asked for an update today, only to check the ticket a few hours later to find it closed. WTF #DELL. #DELLSUCKS more and more each day I deal with this no service response. @COSTCO needs to step up to the plate and make it right or quit selling #dell. I get your a large behemoth that probably doesn’t give a flip about the consumer market, but when I spend my hard earned money on something I expect it to work; especially if I have made the effort to return it for repair and it comes back still broken. #DELLSUCKS I am in #DELLHELL! (and I didn’t even know about Jeff Jarvis until I googled how bad Dell’s customer service reputation actually is.) @DellCares on twitter responded to my most recent post and DM about the ticket getting closed and this is what they asked:


Hi, I am sorry for the confusions. Let’s run diagnostics on the system to check for any hardware failures. This video will guide you: If you see any errors, capture images and share them with me. Note: Keep the charger connected to the system during the test. Also, click ‘No’ when prompted for extended memory test. -Pratheepan.

My Response: “If you go look at the ticket support closed without speaking to me, you see I posted screen captures showing Support Assistant can’t do a diagnostic on the card reader because it doesn’t seem to exist as a hardware device anymore. It doesn’t show if I say show hidden in device manager. I am not trouble shooting it anymore. Please have a Dell support manager contact me.”

Dell Response:


I am extremely sorry for this inconvenience. Please allow me few minutes to get this reviewed with the experts. -Pratheepan.

Here is the information from the service request opened by DellCares. I am pretty sure the the numerous null entries is Dell’s way to keep their entries private, but still use the same support ticketing system as normal request. That is not very transparent if you ask me.

Almost as soon as I asked for the update, the request was closed. I made a couple more social media post about the lack of customer service from Dell.

So, I decided it was probably in my best interest to resolve this issue before I get an ulcer or have some other stress related illness set in. For $50, I was able to upgrade my warranty be on-site after remote diagnostics. Once I could see the new warranty was in place, I made the call to Dell Support. The tech I spoke with saw the closed social media initiated ticket and re-opened it. I did not have to go through all of the diagnostics and other steps to confirm the card read was not working. He took my word for it and set me up for a visit from a repair technician, which was scheduled the next day. While my initial visit was estimated to be between 9am to 1pm, it ended up being more like a 6pm visit, but the technician either called me or sent e-mails to keep me updated throughout the day. Kudos to Curtis from Worldwide Technical Services for his efforts and installing the replacement motherboard while I bent his ear talking about forensics and computers in general. We have both paid our visits to state prisons to do tech work in our careers. Once the replacement motherboard was in and various connections remade, the first power up had me a little nervous as booting Windows failed, but that was expected as the new board needed the service tag and other information to configure the initial boot. Second time is a charm and I was prompted to login; all the drives were present and everything looked good. The final test was inserting a SD card into the internal reader… and it took a few seconds for Windows to prompt me what I wanted to do. I opened file explorer and the SD card was there and I was able to read the contents in file explorer without issue. At this point I am happy I spent the money to upgrade the warranty, but Dell should offer to compensate me in some fashion after the experience of sending the system in and the repair not being made the first time.

GiiNii Photo Frames & Memory Cards

Many years ago I bought a GiiNii GN-7002W 7″ digital photo frame from the local TigerDirect store here in Raleigh. Since that time, many things have changed including the size of memory cards and SD card formatting along with disk boot records. My wife has a little Realistic (RIP Radio Shack) frame that works with a 2GB SD card, but this GiiNii 7″ refused to load any photos off of a 4GB SD card, but would load the images off of the 2GB card. I tried several reformats and making the 4GB SD card into a 2GB through partitioning before finally finding a GiiNii manual on an 8″ frame that says the following:

This is great information, but it leaves out one very important detail. If you have formatted a SD card recently, there is a chance Windows made the boot record type GUID Partition Table (GPT) instead of the old style Master Boot Record (MBR) as GPT supports the new replacement for older BIOS firmware otherwise known as Unified Extensible Firmware Interface or UEFI. So you did come here just to learn about drive boot types and firmware, or you’re probably like me and just want to get your GiiNii digital frame working with your memory card. If your card is listed above and is within the maximum capacity, I think this will help you get your card working in your frame.

Rufus to the rescue. As a full-time digital forensics analyst, I routinely use Rufus to make bootable flash drives and memory cards so I can boot suspect systems for forensic imaging or test out various new Linux operating system distributions. Rufus is touted as “The Reliable USB Formatting Utility w/ Source”. While you can tell Rufus that you want to make a bootable USB drive containing the latest version of Ubuntu or other operating system, it is a format utility like the name says. To get your memory card formatted correctly based on the information from the GiiNii manual above, download Rufus here. Then insert you memory card into your computer’s memory card reader/writer or USB port (this should work for thumb drives as well). Then start the program rufus#-##.exe (where #-## will be something like 3-10) that’s probably sitting in your downloads folder. Here is what you might see when you start Rufus (Note: you may have to be admin on your system to get Rufus working):

Now make the following changes so it will match the image below…
1. Make sure the device information represents the card or USB drive you want to format – then check it again.
2. For Boot selection, use the drop down and select Non bootable
3. For the partition scheme, use the drop down to select MBR
4. Type whatever you want in the Volume Label box
5. For the File system, select FAT32 (Default) from the drop down menu

Verify your settings match these, other than your device name, and click START.
You will be warned that you are about to destroy all off the data on the memory card or USB flash, so make sure Rufus us formatting the right memory card or USB device before you continue.
Once the formatting completes, you should be able to copy your images to the card and get your GiiNii photo frame to see them.

Part 2 The images don’t look right…
“I copied my files onto the card and the frame sees them, but the resolution is wrong and the images are super tiny or I only see a small piece of the image.” It seems GiiNii has tried to deal with this resizing issue on newer frames as the frame can be connected to your computer and the images written to the memory in the frame or the memory card slot and GiiNii resizes the images during the copy process. For people old frames from GiiNii, we are not that lucky. If you have Lightroom, the easiest way to resize the images you want on your frame is to have them in a collection or selected from within a folder. When doing the export and placing the resized images in another folder, use the resize dimensions and set the longest edge to the max resolution your frame supports. My wife’s old Radio Shack frame only did 240 and the 7″ GiiNii does 480. If you don’t have Lightroom, the easiest way using only Windows is on this site.

Hope this helps someone.

PC Hardware Updates – Dell 8930 XPS PC & Lenovo Flex 5

Buying a new computer always seems to be a daunting task, but two experiences with relatives and friends made it somewhat easier. First there was a need for a new system at the bike shop and I went down there one afternoon and offered some suggestions to replace the very old all-in-one HP. Little did I expect the owner to go with the first option I showed her which was the current best seller on Amazon for a desktop with decent specifications that shouldn’t need to be updated for a few years. I also had to consider their POS needs to run Lightspeed. Lightspeed POS is really a cloud based application with the technical issues tied more to the receipt printers and barcode scanning devices than the software itself. After that recommendation and quick purchase, the next was my father-in-law. He had been using a Dell XPS tower from 2008 up until the 2019 holidays. I guess he finally realized that it might time to upgrade from Windows Vista. Within 30 seconds of standing in front of the Dell XPS tower display at Costco, he said looks good. So, to contrast my normal experience with theirs, I usually will spend six months building a parts list on Amazon before I actually order the stuff to build a custom PC. Other than laptops, the only brand name systems I have owned were Tandy XT clone (Returned within 30 day window), and a Sony Pentium system about 15 years ago. At work I have used various IBM, Dell, and HP systems along with custom built Forensic systems from various companies like Digital Intelligence, TriTech Forensics, and most recently Silicon Forensics. I guess I like the sense of accomplishment when I build something from scratch, but there is always the risk of needing support and with home built you have to deal with each part individually where a brand name system is treated as a whole with the manufacturer.

Speaking of needing support, at the beginning of 2019 my wife needed a laptop to replace her aging HP 17″. Why you would want a laptop that big and heavy is beyond me, but she got it and quickly found it became about as portable as a desktop. The main issue we experienced with that system was the back of the screen separating from the front at the bottom near the hinges. Turns out the hinges were so tight that eventually they quit hinging and the screws on the hinges keeping the back attached to the front pull out and opening the lid makes a big split show up between the front and back of the screen. Funny thing is we were at an attorney’s office one day when he pulled out the same HP 17″ laptop and as soon as he opened it, I saw the same issue. He was working a law suit on bad battery issues in laptops and I joked he should consider a class action on the defective HP laptop hinges as we had the same problem. Moving on from the problematic HP, I was given direction to consider a Lenovo as her Dad was a Lenovo contractor at the end of his second act after retiring from IBM. Costco had a Flex 5 laptop with 16GB I7 8th Gen and SSD drive and standard hard drive. Being a Flex system it doubles a huge tablet with its 180 degree hinge and touch screen. Her model has been flawless and I needed a laptop and bought the same model in June. Sad to say, I did not have the same experience, but it all came down to one defective part – the internal microphone array. After troubleshooting the problem countless hours as it became a challenge I wasn’t willling to lose, I finally gave in called the Costco Concierge support. They did basic trouble shooting before getting me in the queue on the Lenovo support line. Lenovo went a little further with trouble shooting, but in the end they diagnosed the microphone was defective. So, on March 14th, I shipped the system to Texas and Corona hit and the estimated nine day turn around time become 37 days. That’s no fault of Lenovo as I imagine it took some doing to come up with social distancing between the technician work benches to allow them to keep working during our efforts to flatten the curve. With the laptop back as of last night, I was able to do a family Zoom meeting with no issues. A family Skype attempt had been the intial detection of the problem back during the holidays of 2019. Now that my system is on par with my wife’s computer, all is good on the Lenovo laptop front.

In building my current list, I was torn between a AMD and Intel build. My last build was a Ryzen and it’s working great running Linux with my old Linux Apache MySQL & PHP (LAMP) system virtualized with VirtualBox. The original LAMP box had a ton of tweaks and other things I did not want to replicate from scratch. So, the option to convert the physical to virtual was an easy choice. See this post on that effort. My most recent build list was leaning toward AMD Ryzen 7, but it was still running about $1800 with okay video cards and 32Gb of memory. While I did not build a list for an Intel system, from what I could see in the market place the Intel build would have been a bit more than the AMD for similar specs. One of the front runners when I started to consider systems, was the CyberPower Costco had on sale during the holidays, but it was only 32GB of memory and came in gaming tower configuration without a CD/DVD drive. I buy music CD’s from the thrift stores and need the drive to rip them into audio files. Plus, they never had them in stock and would not sell the display as the inventory computer kept saying more were on the way. I found it interesting that at some Costco locations they appear to remove the video cards from the display models, but in other stores the cards are present. I guess from an inventory loss control perspective removing the cards prevents them from being stolen, but you would have to be an insider or pretty brazen to try and take a graphics card out of a system up on a display. But I digress. I kept watching the Costco site and they posted the Dell 8930 XPS at $400 off the normal price with 64GB of memory, 9th gen intel i7 chip, and a decent Nvidia 1660 Ti 6GB graphics card. 64Gb of memory in any of my custom build lists pushed the prices much closer to $2,000. I put the system in my cart and let it languish for several days, before returning on the next to last day of the sale to make the purchase.

So far I am impressed with the build quality. Plastic on the external pieces, but mostly stamped steel on the internals. Doing forensics on PC’s for a living, I have encountered some pretty strange case configurations where the case opening mechanism was a puzzle in itself. This case did not disappoint in that area. There was a screw on the latch that had to be removed, then the latch itself does not slide, twist or pivot; but pulls away from the back of the case to release the latching mechanism. The tower itself is about the height of a power supply shorter than a full ATX tower. Interestingly enough, the difference in height is largely due to Dell positioning the power supply in the middle of the case through the use of a hinged support system. It seems to make the case a little top heavy toward the front as keeping the system on the edge of the shelf I have it on is little precarious when slid out too far. Inside the case are two additional 3.5″ hard drive (HD) caddies located on the very bottom of the case. Each caddy has two screws to hold it in place once the drive is mounted using the standard screw holes on the side of the drive to attach the caddy. For SATA cabling, a right angle on one end with straight on the other should work with a length of no more that 12-15″. I plugged in a clone of my old data drive from my previous system went right to work after using Ninite to grab my favorite software and installing my commercial packages from Adobe and Microsoft. Speaking of Microsoft licensing, I use a volume license reseller Indigo Software out of Texas for Office licenses. They are about the same or little cheaper than a subscription, but it’s one time purchase. I was a little disappointed that the Dell 8930 came with Windows Home, but a quick search on ebay for a Pro upgrade license was easy to find and did the trick to get me to Pro.

I have not really found anything to tax the system resources at this point, but eventually I will be doing some video editing. The internal SSD, which appears to be a motherboard SSD slotted Micron 2200S NVMe 512GB is decent drive and reported these results at User Benchmark
SusWrite @10s intervals: 851 1095 1296 1291 1291 1018 MB/s
For the full UserBenchmark on my actual system check out: The actual 2666 MHz memory installed to constitute 64GB is from SK Hynix. I have not really looked at the other hardware other than noting the internal 2TB drive a Seagate Barracuda and the built-in sound card is a standard Realtek with three connectors (Front, Surround and Sub/Center) on the rear and two 3.5mm ports on the front. The front also has a USB C Type 3.1 on and rear as well. The front panel also includes three USB ports and a SD card reader/writer. I guess the only thing that not top of line at the moment is the graphics card, but for my needs with image editing, it is more than sufficient.

I don’t know that I would call this purchase an impulse buy, but it was a definite change from the buy parts and build a system mentality I have used in the past. Windows 10 itself is a pain when it comes to first time setup. It never names my c:\Users\<folder> to be what I want and takes some registry edits and workarounds to get what I want. Why not just ask the user: This is going to be the name of your User profile folder “Tim19”, do you want to change it? YES!!! Enter new name: tim They should also detect the presence of a small SSD for the OS and larger Data drive and automatically create the default user data storage folders on the larger drive instead of making the user do a move location on all of them.

Taking a Break

For the last 10 years or more I have held a part-time job that I refer to as my weekly diversion from the rest of life. I am a DJ a local roller rink for their weekly Wayback Wednesday. I usually post the playlist at the end of the night on another social media platform and used to get some comments, but that platform seems to have lost popularity of late so I am looking at another means to post the playlist where there are links to the songs. I used to do this through this blog and a perl script, but there doesn’t seem to be enough time in the day to get all of that accomplished anymore.

Over the years, I have started to recognize the various types of customers that show up on a Wednesday night. There are the small group of friends that want to do something different and will probably not be back for a couple of years. The best of those groups are the college students that raid mom and dad’s closet for some Jane Fonda and Richard Simmons gear to wear when they come out. Then there are the skaters that come to relive their youth a few times a year. We also get some parent and kid pairs that seem to be getting in some family time. Finally, there are the “regulars” where skating never stopped being part of their lives from their childhood. The age range on these skaters goes all the way up to the 70’s. The common thread among all of the skaters is the music. As the DJ, my task is often a daunting one in that I know what the regulars want to hear, but I also have to try and meet the listening needs of all the skaters.

I never go into the night with a set playlist. Any good DJ knows you will almost always have to adjust the music to the make up and mood of the crowd. I might have a couple of songs I heard on SiriusXM or found by perusing the charts on various music services, and then there’s the Promo Only subscription that attempts to provide all of the latest chart toppers and trending songs. If I can get the time to go through the new songs in the subscription, I actually can come across some new dance EDM songs that fit in the mix for the later part of the session when the focus us on shuffle skating. The latest one is by Dom Dolla – Take It. In the earlier portions of the night, I try to focus on the 70’s pop and disco scenes between 7 and 8. Eight to 9 is mostly 80’s pop and R&B with a beat and also the time for a fast skate and a couples skate just before 9. Nine is when the fun starts for me as the skaters want the beats per minute (BPM) on songs to stay the same so their long shuffle lines of multiple skaters pushing off each skate in sync with each other can continue. This is not as hard as it seems and I often start the 9 o’clock hour with something in the 110 BPM range and can end up in the high 120’s before the bell tolls 10. I love doing the blended mixing to keep the regulars going and these songs can be anything with a beat, but mostly 80’s funk and break dance beats along with some 90’s freestyle and now some newer house and EDM stuff like “Take It”.

As I type this blog entry and confess its purpose, I must admit that I am getting tired of the of some of the things I have to deal with when attempting to make everyone a happy skater. At least from the perspective of music. I am pretty good about taking criticism if I am not reading the crowd’s mood and routinely entertain requests made at the snack bar, but a 16 minute Grateful Dead song requested at 9:15 is never going to fly. My gauge on success is how many skaters can I keep on the floor because they want to skate to the music I am playing. When I see a crowd forming off of the floor, I can tell I need to do something to get them skating again. Whether it’s finding something new or going to a tried and true Freestyle Project song or Planet Rock, I can usually get them back. I want everyone to go home having heard at least a few songs they liked and exhausted from skating the whole night. Over the past year I feel like this has been a tall order to fill. At the end of the night, the posted playlists seem almost identical to the week before with the same old tired 80’s funk filling out the last hour. So what to do?

First, after missing Christmas and New Year’s Day, I am taking the month of January off. Yes, I am having a bit of withdrawal and miss my skating friends. But, I am taking the opportunity to spend more time with my parents who happen to be in the same nursing home for the moment. And, most importantly, I am taking time to reflect and make a game plan for my return. So stay tuned…

For some reason this post missed its scheduled date to get published by WordPress. But it gives me a chance to update it before making it final. While I was supposed to come back in February, I got a call from the owner that the staff for Wednesday night did not have right skill set to cover all of the positions if I wasn’t there and asked if I could come in. To be honest, I was glad to get the call. The withdrawal from DJ’ing was more than I expected. The night went pretty well and I was able to get in some of the new house and EDM stuff I have been researching to play. Here is the playlist as posted on Facebook.


NMAP Automation

After I retired from state government IT security work, I was surprised when I started as a federal contractor to see how many of the security practices that were common due to the state IT shoe string security budget also being prevalent in the federal space. One of those practices is paying security professionals to be copy and paste machines where the data being copied is the output of some security tool and the destination is an Excel spreadsheet. In the federal position, I worked with one of the Jira experts from the lead contract firm who automated ingestion of the Nessus scan results into Jira tickets. While that was a big time and sanity saver for me, it ended up leaving me a bit under challenged and I went back into incident response but in the private sector. Luckily, vulnerability scanning and management is not in my job duties, but I still get tapped by some our new team members who are tasked with that responsibility to help make their jobs easier through automation and scripting. The most recent ask was to look at a way to automate nmap scanning to produce a file that could easily be ingested into, you guessed it, Excel.

The current practice is running weekly nmap scans on specific regions for specific ports. That in itself is easy enough with command line nmap and grepable file output options, but with a little bit of scripting and files for targets and ports with some python thrown in to get the output to be pure csv – we ended up with something that might be worth sharing if your situation is similar. While my preferred approach would have been to scan the full range of targets for all of the ports and grepping for the regions and ports, the current tracking spreadsheet is more tailored for specific network scans where the scan activity is limited by port and region.

nmap can take a file as input for the targets, but not for ports to be scanned. A simple solution is to call a Linux command to read a file after the -p port parameter, but that expects a properly formatted comma separated port list. Maintaining port list files is much easier if we can list the ports as one port per line.

The nmap command we ended up with is:

nmap -Pn -n -sS -iL targets/"$targets" -p $(sed -z 's/\n/,/g;s/,$/\n/' < ports/"$ports") -oG output/"$filename"

The parameters are $filename $targets and $ports that are provided as arguments to the script call. The nmap parameters are standard, but the port file is being inserted through a couple of calls to sed with the ports file as source. The first sed removes the newlines and replaces them with a comma. The second sed removes the last newline of the file to avoid a blank port or space showing up in the command. In this next portion of the script, we leverage a python script nmaptocsv that converts nmap output to csv.

python nmaptocsv/ -i output/"$filename" -d ',' -f ip-fqdn-port-protocol-service-version-os > output/"$filename".temp

Finally we need a little more clean up to get to pure csv.

cat output/"$filename".temp | sed '/^$/d' | sed 's/\"//g' | awk 'NR == 1; NR > 1 {print $0 | "sort -n"}' | grep -E "VERSION|tcp|udp" > output/"$filename".csv

Sed is used to delete the quotes and blank lines from the output. While awk is used to preserve the header line and sort the rest of the file. grep is used to limit the output to the header and hosts/lines showing open ports. For the full code, follow this link. Comments are welcome as I am not a shell script master, but can cobble something together when needed.

Here is a before and after sample from the straight nmap output, to the temp after the nmaptocsv, and the final csv.

NMAP Output:

Host: () Status: Up
Host: () Ports: 21/closed/tcp//ftp///, 22/open/tcp//ssh///, 25/closed/tcp//smtp///, 80/open/tcp//http///, 110/closed/tcp//pop3///, 137/closed/tcp//netbios-ns///, 139/closed/tcp//netbios-ssn///, 443/closed/tcp//https///, 445/closed/tcp//microsoft-ds///, 3389/closed/tcp//ms-wbt-server///, 8008/closed/tcp//http///, 8080/closed/tcp//http-proxy///

Nmaptocsv Output:

Final CSV Output:

Get The Scoop on Facebook Ads

I recently started getting inundated with ads for Lightroom presets and Photoshop overlays and actions when on Facebook. They all purport to be worth several hundred to over a thousand dollars in value. Intrigued by one ad offering $694 worth of these items for $19, I followed the link in the ad to a myshopify site where the price was actually listed as $29. I went back to Facebook to report the ad as misleading and during the process Facebook offered a menu option to review all ads by this advertiser. I clicked the link to view all of the ads and saw where the collection was not only being advertised for $19, but also $14 and $29, all for the original $694 package. Clicking on the ad with the $14 price tag took me back to shopify where the exact same product was offered for $14. Part of me says this is just wrong, but the capitalist in me says – get what the market will pay.

Now the good part of all of this is I did a little digging to determine how I could use the Facebook ad library to view other advertiser’s ad feeds without having to go through the report an ad method. First, you need to know the advertisers ID number. This is a long number like “368333793192753” that is part of the ad code itself, but you have view the source of the web page to locate it. Once you see an ad you are curious about, right click on the ad company name, which should be at the top of the ad, and select the “inspect element” option. Don’t be intimidated by the split screen that appears in your browser. Now, look for the ID #. It should be right after /page.php?id=___________ in the highlighted text. Now take the URL I have below and copy and paste it into your web browser address bar at the top. Before hitting enter, go to the end and back space over the existing ID number and type in the one you want to view and press enter.

You should now see something like this for the advertiser. The sample I have used seems reputable as the pricing offered is reflected across all of their recent advertisements.

Once you paste and hit enter this will be the URL you wind up on if you use my example.

I guess this could be useful if you think you may have missed a cheaper opportunity to take advantage of a time limited deal. As for these packages, I have ordered a couple but haven’t installed them yet. I will be curious to see if they are the same or similar presets between the two or perhaps just renamed stolen commercial presets and overlays. The real kicker would be to find that these are actually legit and actually do something worthwhile in Lightroom and Photoshop.

My New Favorite Pen

While I still enjoying writing with my fountain pen collection, I have found that I prefer the offerings from several pen manufacturers in their new Ultra Micro/Extra Fine point lines. The largest size I would consider in this line is the 0.38mm size. Here is a quick breakdown of my collection so far with my likes and nits about each along with links to Jet Pens.

Pentel EnerGel RTX 0.3mm

The Pentel 0.3mm EnerGel RTX Retractable – This pen is a needle tip style, which means the tip of the pen narrows drastically about 4mm before the tip. While I would assume the size would result in a weaker pen overall, the tip seems to handle angled pressures well and I have not seen one of these bend. As far writing, the pen is comparable to the others, but not quite as smooth as the Signo RT1 0.28mm. The line being a 0.3mm is hair bigger than the 0.28mm as well, but barely noticeable on most paper stock. The extend and retract mechanism has not shown any issues.

Pilot G2 0.38mm

The Pilot G2 0.38mm Retractable – Pilot claims this pen line is the most popular in sales, but I doubt that would apply to the specific 0.38mm size. The mechanics of the extend and retract clicker are solid. The grip is comfortable and the pen is very smooth on paper. However, this pen has the largest tip size at 0.38mm, which is very much noticeable on paper compared to the others in my list.

Uniball Signo 0.28MM (import)

The Uni-ball Signo RT1 0.28mm Retractable – This pen seems to be a Japan model that a few dealers are importing for the US market. While there is the similar Uni-ball Signo in the U.S., it isn’t offered in the 0.28mm size. First complaint about the RT1 is the clicker / retract-extend mechanism. I had a couple of these that have quit working due to the clicker. They get stuck and disassembly and lubrication does not result in a working mechanism. But other than that, this has to be my favorite among the retractable offerings. The pen is not a needle tip, but does claim to have a beveled tip to allow writing with the pen at a lower angle than competitor pens. The pen is not scratchy on most paper and with the right amount of pressure is a true glider across the paper. This line comes in many colors in the 0.38mm size, but is limited to Blue, Black, Blue-Black, and Red in the 0.28mm size. From an ergonomics standpoint, I really like the rubberized portion of the grip extending to within a new millimeters of the tip. Most of the other pens, including the US Signo, stop the grip about 0.75 centimeters above the tip.

The Pilot G-TEC-C 0.25mm Stick – After spending some time talking with Alan, the owner of the Crazy Alan’s Emporium and Gifts in Chapel Hill, I ended up picking these up as they are the smallest tipped pen I have been able to find locally. I bought a blue and black version of this capped stick pen. While I like the convenience of retractable pens, these make the finest line of any pen I have ever owned. This model takes needle tip to the extreme with the tip having two step downs into the needle tip range. This pen could be the choice for close contact assassins needing an ordinary looking concealable weapon. Writing with this pen on plain paper is a little scratchy with too much pressure, but the line laid down is not closely contested by any of the others in this review.

For more fine tip gels, check out the Jet Pens round up here.