What’s this Solar2D/CoronaSDK/Lua series all about?

Ok, so about a year ago, I got a wild hair to write a mobile app for a very specific reason. I’m going to gloss over that until it’s released…but just accept there were reasons.

I did a little research and found that Xamarin.Forms might be a good way to embrace multi-platform mobile programming…and jumped in both feet.  That went really well until the summer of 2020, when I found out that I’d need to buy a VS license if I put my app on the various stores and either charged for it or hosted ads.   Now, keep in mind, I don’t know what the hell I’m talking about on a good day, so that might be wrong info to start with. 

Regarding Ads or charging: I’m mixed on this.  Again, I don’t know a lot about it yet, so I won’t say too much because it’s probably old or wrong info. But – I don’t actually want to host ads, AND I don’t want to charge people. It’s not that kind of app. I’m not trying to get rich, or even slightly more comfortable.  

So, because I was also helping out with another project, and they chose CoronaSDK as their language, I started learning it.  It had just gone open source and changed names to Solar2D, and is based heavily on Lua.  Finding info has been extremely hard.  Some things are on the CoronaLabs website, some are in the Solar2D forums.  It’s also impossible to google anything related to Corona right now (due to the coronavirus pandemic, future time travelers).  

Several things hit last year (pandemic, grief of losing several loved ones, massive health issues, work craziness), so I shelved the project for several months.  I also, frankly, was stuck on a dead easy problem.  My absolute frustration at being unable to easily find answers made is pretty easy to shove this to the back of the shelf, tbh.  

Because of this, and kind of as a historical record of my progress, I decided to blog my adventures in learning Solar2D/CoronaSDK/Lua and getting the app out.  I keep telling everyone I work with, if you have a question in a meeting, ask the question out loud.  If you don’t know, it’s guaranteed that others in the room (virtual or otherwise) don’t know either and are too afraid to ask and appear dumb.  Normalize admitting to not knowing.  

So that’s it. That’s the blog post.  Welcome to my journey.

Altova License Server Pain Points – Firewall Rules

Ok, so I recently came across this gotcha I wanted to share.

I needed to install Altova License Server 3.4 to handle concurrent licenses for one of their products, XMLSpy.  This seemed straightforward enough.

Altova License Server documentation says…

The firewall team will love this!
The firewall team will love this!

Obviously, the firewall team did not love the idea of “all sub-domains,” and insisted on a specific IP addy.  At first we tried the IP for altova.com.  The TTL was something ridiculous like 2 seconds, so they gave in and let us use URL rules.  However, this still was not working. So, they looked to see what wasn’t getting through, saw lic.altova.com was being blocked and opened it for me.

That got us a bit further along…

Altova License Server - Test Network Connectivity
Altova License Server – Test Network Connectivity

Unfortunately, the need for log.altova.com and link.altova.com wasn’t clear until we were communicating with lic.altova.com.

After opening only those three sub-domains, our License Server is happily communicating with the mothership.

Hopefully armed with this info I can save you the weeks of back and forth between the network team, Altova, and the therapist that it took to get this straightened out.




Wearing two hats, emotionally.

How many times at work have you heard, or said, “Let me switch hats for a second…”

This refers to the concept of “wearing many hats,” or juggling several roles at once.  For example, in my current role, I’m both an individual contributor and a manager.  Sometimes in team meetings I’m in a peer role with my team, sometimes I have to “switch hats” and say something managerial.  While others might not be aware I’ve made the switch, I am very aware.  Other hats I’ve experienced include: being both an operational dba and db developer and being both a dba and project manager (ugh).


There are many other ways we wear multiple hats in life.  Are you an employee but also a parent? Spouse? Partner?  Do you go to school part time? Full time? You are still a child or sibling of others.  Maybe you run volunteer efforts after work. Maybe you play in a band.  


Frequently, (for me, anyway), saying “I’m switching hats,” is woefully inaccurate.  The reality is, instead, I have all these hats piled on my head at once.  Perhaps there is one showing at the very top.  That’s the hat in focus, if you will.  But they are all still here simultaneously.  


Imagine standing on the sidewalk.  You see a horrific car accident in front of you.  You have witnessed the car accident.  There are participants who are injured, and they are carried from the scene by ambulance.  You tell the officer what you saw, and you go home shaken, but healthy. In this scenario there is a very large distinction between the roles.  There are participants. There are witnesses.  


When I talked about “gestating your sad baby” previously, one of the reasons this technique works is because it makes you a “witness” to the emotion.  You are still a participant in the emotion, however. You are both. You are the participant, and at the same time, you are the witness.  Visualizing “gestating your feeling baby” doesn’t stop the emotion.  It incorporates both roles at the same moment.  Bring the car accident analogy back to mind.  Pretend you are still the witness, but this time you are sprayed with shattered windshield glass. You are bleeding. You need medical treatment, too. Now you are a participant. You are both roles simultaneously.  


Next bring to mind being in a meeting with developers who say they want to use the “jaywalking” sql anti-pattern, (comma separated lists in a column instead of an intersection/associative/linking table).  Your operational dba side is there, too, and comments on what a generally bad idea this is for your transactional db.  At that moment you are both dba and db developer.  We walk around through our lives with all our hats piled on our heads.  We are a melting pot of all our roles.


Kyle Cease (who is a bit out there but  still has a lot of good points), likes to say, “we aren’t here to feel happy, we are here to feel fully.”  And this is so, so, so true.  The goal of the “feeling baby” isn’t to make the feeling go away. The goal is to be a space for the feeler (you) to process the emotion, but also be the witness (yep, still you), of the feeler doing its thing.  


This is very hard for black and white, all-or-nothing people.  We want to believe we can have only one hat on at any given time.  Having been there myself, I invite you to look at your resistance to this concept as a good place to practice witnessing an emotion while feeling the emotion.