I dont follow Apple all that closely, but I was interested to see that they are moving into the Augment / Virtual reality (A/R V/R) space with an upcoming product. This article shows schematics for upcoming A/R glasses which makes sense for Apple. From the article:
Apple is rumored to have a secret research unit comprising hundreds of employees working on AR and VR, exploring ways the emerging technologies could be used in future Apple products. VR/AR hiring has ramped up and Apple has acquired multiple AR/VR companies as it furthers its work in the AR/VR space.
This makes sense, as this would be the next logical extension to the Apple Watch. It looks like they are headed in two directions – Apple Glass which would provide an easy way to get notifications – kind of a heads up display for everyday use.
According to the rumors Apple appears to be working on a V/R headset also. This has been rumored for some time, but there are more specifics to the rumors:
Along with augmented reality smart glasses of some kind, rumors have suggested that Apple is working on an incredibly powerful AR/VR headset that’s not quite like anything else on the market. It is said to feature an 8K display for each eye that would be untethered from either a computer or a smartphone, and it would work with both virtual and augmented reality applications:
Along with augmented reality smart glasses of some kind, rumors have suggested that Apple is working on an incredibly powerful AR/VR headset that’s not quite like anything else on the market. It is said to feature an 8K display for each eye that would be untethered from either a computer or a smartphone, and it would work with both virtual and augmented reality applications.Rather than relying on a connection to a smartphone or a computer, the headset would connect to a “dedicated box” using a high-speed short-range wireless technology called 60GHz WiGig. The box would be powered by a custom 5-nanometer Apple processor that’s “more powerful than anything currently available.” At the current time, the box apparently resembles a PC tower, but it “won’t be an actual Mac computer.”
For years I have been skeptical of Apples ability to innovate – every year all they innovate is a bigger iPhone or bigger iPad at a bigger price. However, I have to give them credit for getting the Apple Watch to gain market share. Now the real innovation that I am intrigued by is their recent purchase of a company called NextVR. This company ” specializes in recording live events like concerts and sports matches to be experienced in VR “. So Apple might be just the consumer company to finally bring VR to the masses, if they can take the worlds media consumption to a whole new level from streaming TV shows to streaming VR shows.
So keep your eye on Apple – while these are only rumors, it seems a logical next step for the company.
When I started this article, my thesis was that the drop in the stock price was justified. But after breaking down the business and looking at the expected revenue contribution of the various segments, I changed my mind.
I am not too wild about any stock in this environment, but I may sell some other stock to raise cash and take a flyer on Townsquare Media.
Microsoft stock has been one of the few stocks I have tracked consistently over the last 30 years. In 1990 I finally decided to buy Microsoft stock, even though the P/E on the stock was through the roof. Previously I had always looked for stocks that appear cheap on a valuation basis, but I felt Microsoft was going to be a winner and it was always overpriced. It turned out to be one of my best investments ever, splitting 7 times from 1991 through 2003.
Unfortunately, I fell in love with the stock and held it throughout the 2000’s when it did very little. The technology world was changing, and the Ballmer administration (in my opinion) lost touch with developers and made some really bad decisions. I finally drained my position in 2010 as I saw no ideas coming out of Microsoft that could justify me owning the position.
After Ballmer left and new CEO Satya Nadella came in, in 2015 I bought a small position since I new Nadella had been the head of the Microsoft Azure Cloud business, where I had seen good and creative decisions. I exited that position in 2016 with a small profit, when I became concerned that the cloud business could not make up for the loss of Windows revenue as the price of Windows goes closer to zero every year. The other concern I had (which I think is still somewhat valid) – is that the cloud business is a commodity business, and all the other cloud providers have alternate sources of revenue. For instance, Amazon and Google could treat the cloud business as a loss leader, really cut the price of cloud, and could survive on its other businesses. Microsoft is disadvantaged in that respect as the Windows revenue is dropping.
But this month, I decided to get back into Microsoft stock. After giving much it much thought I decided that even though it is expensive (much like when I first bought it) I think it has upside potential. Below are the reasons for finally getting back in:
Coronavirus (relative) winner: Long term I think it will gain market share as the S&P 500 companies are forced to retool their workforce for remote work. I think big old companies like that are most likely to default to Microsoft – they likely have Microsoft applications in house, and it would seem to be a comfortable choice. Most companies when they move to the cloud take a ‘lift and shift’ strategy – where they just move applications to the cloud, then retool the applications to run more efficiently and cheaper. During the lift phase of this process, this typically costs more than in-house processing with the promise is long term cost reduction. Microsoft should see profits jump on this shift.
Microsoft Teams vs Zoom: In 2000’s style Microsoft execution, Microsoft inexplicably lost the business video conference war with Zoom. Everybody is using Zoom – when Skype has been around for years. However, I am thinking (hoping?) Microsoft Teams is being improved and has videoconferencing, and should be a better choice for enterprises than Zoom. Maybe this is a Blockbuster vs Netflix analogy – in which case I will be wrong, but I think Microsoft Teams has a decent chance of taking major market share in remote worker productivity.
Augmented Reality(AR) / Virtual Reality(VR): I am beginning to think maybe the enterprise is where AR/VR will take hold and find the ‘sticky’ application that makes it a must have. Maybe with the rise of telecommunication, AR will be the next level on that. Microsoft has done a lot of work on the hololens and if they this technology firmed up and with a good product team, this could be a real growth driver.
Blazor: I have done previous blog posts on Blazor, and the more I work with the more amazed I am with it. It is such a well thought out platform, and I think it will take huge market share from the current in-vogue frameworks like Angular, React, and Vue. It is so easy to get started with , and all the messy Javascript transpiling and packages go away. From a developers point of view its a thing of beauty. Its no coincidence that the development tools work seamlessly with Azure, so as enterprises develop using Blazor and the Microsoft Visual Studio tools, this will make it easier to go with Azure.
So Microsoft is back in the portfolio. In this coronavirus stock market, I am taking the time to improve my portfolio. I sold some other technology stocks to add Microsoft – rather than commit new money to this stock market. I hope I am not too late on this purchase, but it feels comfortable to be back in the Microsoft fold.
I have started to give some thoughts about how to invest in this post coronavirus economic lockdown world, and thinking about how I should adjust my investing thinking in this changed economy. I do think in the next several months to years there will be structural changes in the economy, causing me to rethink my investing priorities. The following is just a sample of my current ideas.
Job automation will be jumpstarted. With demand falling, I think there will be much more emphasis on streamlining operations. Over the last few years we have been inventing technology that has had mild acceptance in corporate america, but now that companies are less fat and happy, they will be up for trying new things.
A couple examples are video conferencing and moving operations to the cloud. Due to the closing of workplaces, video meetings have become a daily requirement for white collar America. As workers become more accustom to this mode of communication, it will lead to improving efficiencies. In addition, having workers work from home will cause employers to rethink management practices as employees are suddenly autonomous. Related to this is moving operations to the cloud – i.e. Microsoft Azure or Amazon AWS. While disruptive at first, this can lead to smoother operations and allow companies to focus more resources on the business and less on infrastructure issues.
Jumpstart to augmented/virtual reality (AR/VR). I know this sounds odd, but for years AR/VR has struggled with mainstream acceptance. This is a technology that is an example where companies have not really figured out how to integrate a technology into their operations. At the same time, the technology is getting better, cheaper and could be more than a niche product. Now that video conferencing and work from home have taken hold, to me a logical extension of this would be VR meetings to better simulate the workplace. These could help the building of corporate teamwork lost when employees are not in one physical place achieving a common goal. Not a big investing theme here for me, but I am starting to think about what technology companies might benefit from the next step up from video conferencing.
Strong Balance Sheets. I have spent a lot of time over the last couple of weeks looking through the balance sheets of the companies in my portfolio. We are in a time where nobody can forecast earnings for the next few months, so looking at the balance sheet and thinking of best case/worst case scenarios helps me assess the near term performance of companies. Those fortunate companies with low debt and lots of cash will be in a good position to ride out any worst case scenarios, and also have the flexibility to pick up low priced assets of failing companies.
Good Management. Good management will be more important than ever for the next few years. My measure of good management will be how well does management adapt to the changing workplace, changing customer demand, and changing supply channels. I think there will be huge opportunities for smart companies to find products in this new environment, and also keep their workforce happy and motivated with new management techniques. Good management may also want to rethink ‘just in time’ inventory approaches, and redesign backup plans for sourcing of materials.
Real Estate Losers. I am very bearish on commerical real estate over the next few years. The triple whammy of a glut of restuarants that will not reopen, an oversupply of hotels for business travel/conventions, and less office space requirements can’t be good. I think smart management will be able to reduce the amount of office space needed per employee. The business convention business has been overlooked as a big loser in this new world. One example is Microsoft cancelled all its in-person events through July of 2021. I have to believe most big business conventions will be cancelled for at least 2020. That’s a lot of empty expensive hotel rooms in the downtowns of many cities.
The Rise of Sports Betting. Another big loser in this event is the hit to municipal economies. With all the revenue shortfall states will incur, I have to believe ramping up revenue from gambling will be an early target. Sports betting was already gaining traction in over a dozen states – I predict wagering on profession sports will be legal in all 50 states by the end of 2021. The winners here will be casino operators.. unfortunately most casino operators have big hotel holdings that will get hurt on the flipside, so choose your investment wisely in this area.
Regardless of whether you agree or disagree with any of the above points, I think its worth it for every investor to envision what the world will look like when we come out of this. Then look at your portfolio, and make sure it is positioned with companies that will thrive in this new environment. Whatever happens in the next few months, I think the stock market will identify big winners and big losers.
As with most people in Washington State, I have been self isolating most this week working from home, and watching the financial headlines roll through like thunderstorms. I have spent so much time in my office chair this week I am looking for backup chairs in case my main steed fails.
This market drop and has been sudden and spectacular. Record breaking volitility, massive economic shutdowns, and pandemic fears make data driven investing extremely difficult. I have been asked by several friends over the last few days for market opinions, and gladly respond to anybody who cares to hear my amateur-status opinion. In past months, you could have looked at invest.vfsystems.net to get my rough view of the market, but in this enviroment, its moving too fast for that data-view of the world. So please feel free to email me any time you have market questions – I am full of free advice and opinions.
In summary, I do believe this will be a more significant event that the 2008/09 great recession. The worldwide supply and demand shock in this highly levered world is going to cause severe economic damage and change. Perhaps this quote from Warren Buffet is the most appropriate now:
Only when the tide goes out do you discover who’s been swimming naked.
The tide went out very quick in this case, and indeed, a lot of companies are scantily dressed (I am looking at you Boeing).
Having said all that, I thought I would post these thoughts, giving you an overview of what I have seen this last few weeks and what I am thinking:
GDP Estimates – It was fascinating to watch the GDP estimate revisions for 2020 come out this week. On Monday, Goldman Sachs forecast a 5% drop in Q2 GDP, then a 4% rise in Q3 GDP. When I saw that I knew that was still way too optimistic. As of this writing at the end of the week, Goldman is now down to -24% (!) Q2GDP and looking negative all year:
To be fair – nobody knows – past data is pretty much useless now, so everybody is just guessing. But it cant be good.
The Speed of the Market Drop – Speaking of data, the speed of this drop is what was most unique about this downdraft. My investment models look at economic data and predict expected prices based on that data. We have no precedent for such a sudden global economic stoppage. And the economic data we have is in many cases too old. For instance, Housing Start data came out on Wednesday this week, and the survey was for February, which by now is ancient history. The number was down slightly from the all time high. Typically Housing start data has been a good predictor of slowdowns, but because of the speed of news we wont see Housing start data tank until we get the March numbers in late April. So I have some work to do to figure out how to get more timely data or otherwise deal with fast moving markets.
Investing By Hand – Because the market is moving faster than my data, I took my investing strategy off autopilot, and am now investing largely on untested theories and headlines in this turbulent market. This is extremely dangerous. However, I am working to repair my models, and every day I think I get better data to help drive decisions in this new environment. I am gravitating to strong companies I know, with smart management. Going into this crash I was fairly defensively positioned, and as this market has dropped, I have gotten more defensive. My model is still fairly positive on the market, but again, the lack of timely data makes that opinion near worthless. The most important thing is to keep my emotions in check and look at the data coming in rationally.
Bet Against Commercial Real Estate – One non-data related trade I made was to by a Sept 2020 70 strike price put on the VNQ. The VNQ is the Vanguard REIT Index. This was a trade I had been thinking about, but was triggered largely by the news that our local high end mall was closing for two weeks. This mall, like many malls, has been increasingly opening restaurants in place of stores closing due to the retail apocalypse. As the coronavirus hit, all the stores and restaurants immediately emptied out. When this local mall closed, it was enough for me to act on my thesis that the impact to commercial real estate will be devastating from this point forward. We already had too many restaurants opening. We had massive building of commercial offices built downtown (now and in the future to be empty due to working from home). Finally, in our town we have had thousands of new hotel rooms built in high rise hotels built in the last couple years alone. I am confident in the next few months, we will find out which hotel chains have been swimming naked.
Regarding working from home, yes I think people will return to offices after all this. This event has caused me to use on a regular basis teleconferencing software, and I must admit, it works pretty well and once a home office is set up, you can be at least nearly as productive as in the office. I think businesses can adapt to this new paradigm on an ongoing basis. Yes I believe employees still need central meetings periodically, But I think this will kick off a large shift of offsite rotation. Maybe this will lead companies to reducing office space needs by 1/3? If so, that is a lot of nice empty office buildings.
In summary, I do not think this market drop is over. In 2008/09, the market dropped by ~55% peak to trough, and as of this writing we are down ~32%. I see no reason why we shouldn’t drop less than ~55%, and I think there are a lot of bad headlines coming our way in the next few weeks.
With the lack of data, I think many people are having to invest on emotion. I was talking with a neighbor, and we agreed at this point it may best to close the markets for a couple weeks because of the trillions of dollars being traded purely on headlines and emotion. Lets take a couple weeks to gather data, get a bearing on the economy, then re-open the markets. Maybe that’s not possible with global markets, but I feel that would help.
Regardless of the Coronavirus’s ultimate health toll, I don’t see this as a quick economic recovery. With a 2020 government deficit now projected to be over 3 trillion after all the stimulus being discussed, I think the economic impact of this event will last for years. In the coming days, we will see many corporate losers, surprise bankruptcies, as well as a few winners in this new digital economy. And I still don’t think we are near the market bottom.
As I mentioned in my previous post, I have been tinkering with Blazor, seeing how it will fit into my application development pattern. When I first saw that Blazor web assembly can run on Linux servers, it occured to me that this might be the best tool to be able to build applications that run inside WordPress. So one of the first things I did was to see if I could get that working.
Naturally it wasn’t as straightforward as I was hoping, and I ran into a few pre-release issues with Blazor that slowed me down, but I think I have done enough to see that Blazor will be my tool of choice to build apps inside WordPress.
As you might of figured out, this blog runs on WordPress, and it runs on a Linux host. WordPress is a great tool to through up a reasonably good looking ‘brochure’ website quickly. A Brochure site gives your company or product a Web presence and acts as an online version of a business card. WordPress comes with a simple registration/login system, and a zillion plugins to make site development productive and efficient. I have been using AngularJS inside WordPress to build applications, and that has worked pretty well. But I made the decision to wait on migrating to full Angular until I learned more about Blazor. After using Blazor a bit, I have decided I will not be moving to angular X – and start migrating my angularJS code to Blazor.
So here is my first application written in Blazor for WordPress. the dottet box below is a little app that pulls the most current weather forecast for Seattle from the US Weather Service (this may take a while to load):
Loading…
Adding this application to WordPress was much simpler that I expected. All had to do was publish the application from Microsoft Visual Studio to a file on my development machine, then FTP the files up to a folder I added in the WordPress root directory. Then I just added the following script to this blog post:
After a few failed attempts (which really helped me understand some concepts of Blazor and Web Assembly), it all came together in my head and magically appeared on the page. I must admit the first time I got this working I felt the same way Dr Frankenstein felt
The Frankenstein analogy is not too far off, piecing together disparate technologies to create a web application platform, is somewhat amazing. My favorite feature of this approach is I wrote the application in the familiar confines of Microsoft Visual Studio, all in C Sharp, and no javascript. It’s a thing of beauty.
If you haven’t had a chance yet to look at Microsoft.net Blazor, check it out here. It is still in pre-release until May of 2020, but its worth experimenting with now. The more I work with it, the better I feel the dark days of javascript front end scripting frameworks and packages and transpiling are behind us. This is such a better model.
I have been anxiously anticipating the release of Blazor – Microsoft’s new .Net component framework that should help free developers from Javascript hell.
Blazor is a new tool for .net developers to allow running C# in the browser, inside web assembly.
What I most like about it is, it is such an clean and simple architecture from the developer’s point of view. Writing a blazor app is very similar to writing your typical MVC/Razor app, that runs on the server. I have always felt that MVC/Razor was ultimately the wrong model – very anti-client/server since all the data/template rendering happens on the server. Until now, there has been no way to run c# in the browser, and have the browser pull the data and assemble the page.
Because MVC/Razor does all the work on the server, JavaScript has been the only option to run in-browser code and pull data popularizing the single page application (SPA) model. From a C# developer’s point of view, Javascript is a terrible language. Its not strongly typed, its interpreted (not compiled), and until recently it has been difficult to debug. Because of all this, frameworks such as Angular, React and Vue have become popular to help hide the mess that can be created by JavaScript. In my opinion, this has in many ways made the problem worse, because additional libraries and packages need to be installed to support frameworks, bloating the code and slowing development time thru trying to orchestrate all this 3rd party code.
Blazor finally replaces all this mess. To do this, they had to wait until all the modern browsers support WebAssembly. Today, the only ‘modern’ browser not supporting it is Internet Explorer 11, and hopefully with the demise of Windows 7 traffic using IE 11 should diminish. There is even an answer if you do need to support older browsers – Blazor Server. Blazor apps can also be written to run on the server, so the codebase can be the same whether you decide to run it on the client or the server. Very elegant.
Using a sample provided by Microsoft, I downloaded, compiled and ran the app in my browser in under 5 minutes. Browsing thru the code, its very readable and understandable. within an hour I was able to customize the demo to call my own API and retrieve data from display it – all without javascript. Contrast that to setting up an Angular app, which could take an hour or two by the time you assembly all the pieces to get the code to run. This article has a great overview of Blazor and the code in the demo. Note that when you first run a Blazor app, it takes all the compiled code (that traditionally runs on the server), and downloads it to the browser. So the first load of the page takes a little time, but once the app is loaded its very fast. One current limitation of Blazor is because the code is running in the browser, inline debugging, setting of breakpoints does not easily work from within Microsoft’s Visual Studio, so this is a step backward in productivity as compared with server development. However, because Blazor consumes class libraries, you can debug class libraries as per usual, prior to implementing them in Blazor. Also, the Blazor team has stated that getting debugging working is a top priority.
Blazor client is still in preview until May of 2020. I think this will be a huge boon to productivity, and I am starting to develop Blazor apps now in preparation for releasing after May. Already it is such an improvement over the JavaScript framework model. As of now, I think the future is bright for client side application development.
I have been tinkering with home automation projects over the last few years, messing around with a variety of platforms. I started with a Wink hub and other assorted wifi enabled products, and pretty much glued everything together using IFTTT. This has worked OK, and I have learned a lot over the years. Recently, with my work with the Hue API, I did my first integration that involved writing code, and running that code out at Microsoft Azure. That was a great next step, but the stage is to run a fully programmable local hub that can manage my devices locally (IOT on the edge).
The first step I needed to decide on was what platform to run. I am a Microsoft Windows centric guy, so I was leaning towards building off Windows, but I didn’t see anything I liked. However, now that Microsoft has released the dotnetcore programming library that allows running C# on Linux, that opened up more possibilities. Over the last few months, I finally settled on Raspberry PI, a perfectly adequate machine that you can get for under $100. It also runs on very low power. I put a power meter on it – and it runs consistently at around 4.2 watts – which is about the same as my desktop PC when it is sleeping.
[amazon_link asins=’B07V5JTMV9′ template=’ProductAd’ store=’vgs0c1-20′ marketplace=’US’ link_id=’cc667a40-ba88-4ae9-8592-5b94fa18b1c8′]My first project I settled on came about because of a previous hardware purchase. A while ago, I got a 2 terabyte USB drive at Costco, with the plan to plug it into my router to provide all my PC’s access to a shared large drive. Unfortunately, when I plugged it into the router, it only recognized like 300mg. I theorized that is because the drive is formatted in exFAT to accomodate the large number of bytes, and the router probably doesn’t support that file format. Now I probably could of futzed around for awhile and figured out a good workaround, but thats when I decided to take the plunge and get my first Raspberry PI and use that as my network attached storage.
I received my Raspberry PI from Amazon got started. The hardest part was probably just setting up my work area to start tinkering. I didn’t want to have to swap monitors or keyboards, so I had to dig up an old monitor, mice and keyboard. The raspberry Pi has a HDMI port for the monitor, but unfortunately my monitor didnt support HDMI, so I had to dig up an adapter for it. I also had to buy an 8Gg micro SD card, which delayed me a bit. Once I got my workarea and hardware setup, I just followed the instructions that came with the Pi and I was running Linux in 15 minutes(!) The Pi runs Raspian, which is a flavor of Linux recommended for the PI, and it is more Windows like than I was expecting.
So now that I was semi comfortable with Linux, the next big steps were to attach my USB drive and get Raspian to recognize it. I also needed to figure out how to set up a share so that my windows machines can see the storage, and I decided I wanted to have my Pi run FTP, so I can have my security cameras stream local copies of video recordings to the drive. Getting thos all to work of course mostly involves googling various keywords til you find a solution, and I was amazed at all the support out there for Raspberry Pi. I found step by step instructions on mounting an external drive, setting up a network share (using Samba), and installing FTP and getting FTP to recognize the external drive. Getting FTP to recognize the external drive was probably the most difficult, as there are a couple FTP packages supported by Raspian. But thanks to Ryan Fitton’s postI got it to work.
So now everything is up and running just as I had hoped. Every machine on my network can see the storage, and my cameras are streaming copies of images to the drive. The next step on my roadmap is to start building out the Pi platform. Getting a dotnetcore program to run on my Pi will be the next step. After that.. the sky is the limit.
One of the most under-reported economic stories of 2019 was the problems with the Repo Market and ‘Not QE’. This article does as good as job of any as explaining whats going on. This is a complicated topic, which is why it hasn’t been covered outside of the financial press, but it seems to me this will have huge implications in the coming years.
Starting in October, largely due to all the government securities being issues, the Fed stepped in and became a net buyer of Treasury securities. Wall Street & the banks treat treasury securities like liquid assets – the problem now being there are so many treasury securities in the market, the appetite is dwindling. Banks are stuffed with treasury securities, foreign interest is stalled. It seems everyone who wants to own a treasury bill has one.
Prior to this, starting in late 2017, the Fed had been (slowly) trying to drain off all the debt it added over the last 10 years. One could argue this was a major factor in the stock market ending down in 2018, with its low in December when the Fed raised rates, and signaled more to come in 2019. In January, the Fed reversed course and signaled lower rates, juicing the stock market to new highs. Now that the Federal Reserve is keeping rates low, they added fuel to the fire by injecting (printing) more money into the system, which has the effect of ending up in the stock market directly. It would seem this is what might be fueling the recent highs in the market.
Another longer term ticking time bomb is all the retirement assets accumulated by baby boomers. As boomers quit accumulating wealth (or die), and they become net sellers of financial assets, that money will be passed back into the economy, flooding the economy with all these T-bills that have been hoarded in these retirement funds. I think this may finally lead to the inflation that has been long predicted by economists when government runs large deficits. Once that money leaves the hands of old savers, and into younger spenders, a lot more money will be chasing the same goods which is a recipe for inflation.
Historical economic theory would assume that rising federal debt would lead to higher interest rates, as supply of debt exceeds demand. So far that hasn’t happened. I think this has been distorted by the huge Baby Boomer appetite for savings, and recent Fed policy is distorting markets by ‘hiding’ this debt on the balance sheet. And because it appears to the public and politicians that ‘deficits don’t matter’, there is no appetite to reign in all the federal debt. So far, its working. But I believe deficits do matter. How long the government can continue to print paper to cover these debts is anybody’s guess. At some point one can assume markets will care? And what will happen when markets do care? That is a question that will be have to be answered sooner or later.
I have been working a lot in Microsoft’s Azure platform, and for the most part it has been a relatively smooth transition. Lots of new things to learn, a fair bit of code refactoring and adapting to the new cloud environment.
Recently, I ran into a odd problem at a client of mine that runs on Azure. My client came to me regarding a January email that was supposed to go out at the beginning of the month, and the January email showed December data.
So I dug into this, and verified the report was scheduled to run on the First Wednesday of every month, and verified that the emails were inserted into our outgoing mailbox a minute after midnight on Wednesday January 1st. I spot checked a few of the emails, and indeed they did have (incorrectly) December information. I looked thru the code, and the sql server stored procedure and still could not find a reason.
Finally, I looked at the job run log and found the problem:
The job that was supposed to run at midnight was kicked off at 11:59:57 by Azure’s job trigger. When the report runs, if checks to see the current month year of the run to choose its data, and in this case, it was December.
It’s curious to me that the scheduler is that imprecise. For years networks have had a common time synchronization service which pretty much guaranteed times across servers, but apparently there is a discrepancy between Azure services. I will have to get use to the idea that these cloud services provided by Azure my be loosely coupled, and these services may be more autonomous than my previous windows network world.
My work around for this is simple. I can delay the run of this job a couple hours, so the job will run at 2:00am instead of midnight. My assumption at this point is 2 hours should be safe. But in this brand new cloud world, there is always something to surprise you.