Arabesque Op.100 No.2

So recently I just finished Arabesque Opus. 100 No. 2 by Burgmuller. The song looked difficult at first but turned out to be actually pretty easy. First: By taking a look at the last chord we can easily identify that the song is written in A Minor. Second: The speed is fast pace using a 2/4 key signature.

The song starts with A minor triad on the left hand to start the beat of the tempo. This is something to note as sometimes you can go to fast on your left and your right has to go twice as fast to keep up, So it’s best to take this beat as slow as possible without messing up your timing. Next, it goes from A Minor to D/F then back to A. A Melody is built then it ends on a ‘E’ sforzando! Nice and loud.

The phrase repeats then goes into a fast pace left hand progression just like the right. Then is almost mirrored at the starts with an A to a D/F back to an A.

One big thing to note are the repeat bars to ensure you revert back to the correct bar to continue playing again.

and lastly ending on SF Fermata of A. Fermata has a long emphasis, so be aware.

A great list of symbol definition can be found here. https://melodyful.com/complete-list-of-music-symbols-with-their-meaning

Evolving Train of Thought for C/C++ Library's and Header Files

So, In the last few weeks’s I have been converting my Large ESP8266 project to multiple .h Module files so I can carry functions over from project to project and at the same time have them centrally managed to update code / fix bugs so they carry over to all of my projects.

One important detail on how I do this is to be able to trigger function code from within the Main project as needed so I don’t have to handle user specific events within the Header file where it does not belong. So, I do this by using TypeDef and declaring a Prototype for my Callback function. In this case,

Then set the callback function,

Set the callback in the Header file

Then in my Header file I then check to see if the value is set != NULL. If so then I call it.

The Main Function will get triggered and I can then access the variables stored in the STACK/HEAP depending on how I pass it to the caller from the callee.

One thing to note for the LOVE OF ORANGE JUICE WATCH OUT FOR USE AFTER FREE ISSUES. If your doing this from an ASync call just be aware to Lock the thread/variables so you don’t crash or use Data that get’s falsely injected!

With this method you can just Include the Handler, Call the Coordinating Init Function and pass the &Address of a function matching the prototype and your off to the races!

Full Header and Main.C example
DHT.H
#ifndef dhtthermastat
#define dhtthermastat

Main.C

Appellee's Opening Brief – Response from District Attorney's office

OooOoOo, Look what I received yesterday. So, I really can take this two different ways.
1: The D.A. agrees with my stance that the court error’d in interpreting the Statues CVC 40801-40805 / CEC 1271(C), Doubtful 2: They don’t give two structured object’s about traffic cases and will leave it to the justices to reverse if there was indeed a legal error, More likely.
However, in any case, it’s best that they didn’t respond with a rebuttal and hey, this saves me from having to do an oral argument in front of the Justice Panel, which I wouldn’t of minded for the learning experience.
Previous Post: http://controllingtheinter.net/2018/02/27/traffic-court-cvc-22350-basic-speed-law-continued-appellants-opening-brief/
Update: 
http://controllingtheinter.net/2018/06/18/waiting-on-results-from-appeal/

Isilon Smart Connect – Performance issues

So, in my environment now we are having Isilon performance issues where a single file is taking anywhere from 20ms to 6 seconds in response time to deliver access to a file. I am currently working on getting Smart connect Advanced setup to get stronger control over our connects to our resource pools. We currently own 4 x210 bricks in our environment and have a file policy setup to replicate data to them for faster read access (SSD equipped). Now to my surprise while working with Dell it seems that if you create another pool, your x210 nodes can be a member of both pools and a virtual interface can be added to the x210’s so they then have two IP’s assigned to them. We can then assign a 2nd Smartconnect name to Pool1 and then point our highly sensitive servers to the new pool. This will give them a dedicated line to the SSD storage vs. having it fight with other servers on that same IP interface. I would be surprised if the difference was large but Dell seems to be pretty certain that well see an improvement even though it will still remain on the same physical devices.

ESP8266 NONOS SDK SprintF stright from Flash

Well this weekend turned out wonderful. I manage to finish this little piece of and this solution saved me a HUGE mount of heap space. This function I wrote to cycle through flash memory and format SprintF on the fly from Flash memory instead of having to double buffer the formatted HTML page. In my case my HTML page is around 4-8k depending on what I am loading, thats over half the ESP’s heapspace just to send results to the client, YIKES! Now those day’s are over 🙂