Apple Apps enterprise ready?

Apple announced new features for their messaging platform. While all of us can enjoy editing and unending the messages and complain that Twitter can’t get a simple editing feature; there is something else that no one has mentioned yet.

Even Apple Mail now boasts about Unsend Mail, Schedule Mail and a better search.

With these simple features, Apple Messages, FaceTime and Mail apps are now set up for enterprise use. If you use Apple Gear across your organization (or maybe a higher percentage of users have Apple), you are now looking at using these apps to replace Teams or Zoom as your communication platform.

IconFactory’s WorldWideWeb

I absolutely love IconFactory’s apps. I use at least 2 or 3 of them on almost a daily basis. Iconfactory’s developer Craig Hockenberry announced a new app recently and it home for me.

The Mac and Web have a long history together. From the very beginning, Mac OS X included the ability to run an Apache web server by clicking a Start button

About a decade ago, things started to change. Since then it’s gotten harder and harder to start a simple web server for testing HTML, CSS, and JavaScript. I eventually found a way to do it using AppleScript, but as Apple continues to remove open source components from its standard macOS distribution, this workaround isn’t likely to last.

It’s simple and yet powerful. Reminded me of my college and work days when starting an apache or IIS server and hosting your PHP application was the way to go about developing your app.

FYI, this works on macOS, iOS and iPadOS.

gqt

Off late I have been dealing with API at work and home, REST and GraphQL. Came across this fantastic utility today – gqt. It’s a simple GraphQL client, but runs in the terminal. Using this in Visual Studio Code’s Terminal is so helpful when you don’t have to switch windows while working.

Give it a spin.

Markdoc

Came across Markdoc today, made by Stripe.

Stripe is know for its excellent developer documentation – well it has to be, its probably the most important feature for the company. If you go through their documentation is not just a good reference guide, but they also allow you to interact with it to get a feel on how to use the API effectively.

Stripe built their own content authoring system and have now released this as an open source project. It supports Markdown which makes it a joy to use this tool. The tool looks great too.

The tool is so easy and pleasing to use, that I have been using this to simply write my notes 😊

Drama at Twitter continues… 🍿

Well, everyone wants to make sure they get a fair deal: Elon Musk says Twitter deal on hold pending details on fake accounts; shares sink 9%.

Elon Musk announced Friday that his Twitter deal is on hold until he receives more information about how many fake accounts there are on the social media platform.

In a follow-up tweet around two hours later, Musk added that he was “still committed to the acquisition.” Twitter’s stock plummeted 18% in premarket trading following the initial announcement, but trimmed some losses after the second tweet.

Ever since Elon Musk made his intentions clear, it’s been entertaining to watch this unfold.

The Hinderberg Research published an article: We See a Significant Risk That The Twitter Deal Gets Repriced Lower:

1. Nasdaq Has Plummeted ~17.6%, Implying A Twitter Price of ~$31.40 Per Share Without a Deal

2. Twitter Reported Weak Quarterly Results And Disclosed It Had Overstated Its Users (Again) Just 3 Days After Accepting Musk’s Offer, Suggesting Further Downside That Has Not Already Been Priced In, Should Musk Walk Away

3. Musk Indicated He Will Sell His 9.2% Twitter Stake Should a Deal Not Consummate

But, I did not expect this at all: Twitter CEO Parag Agrawal says he fired key execs due to ‘challenging’ economy.

Kayvon Beykpour, who’d been head of product at Twitter since the acquisition of Periscope fired off a few tweets when this news broke out.

Kayvan Beykpour had done a tremendous job and played an important role to set up a good product strategy for Twitter.

Bruce Flack the other executive who was laid off took very little time to update his Twitter Bio.

Not sure how Twitter Inc. is reacting to this decision.

mitmproxy2swagger

Came across an interesting library (or tool) – mitmproxy2swagger that reverse-engineers REST API just by running the web app and sniffing traffic in the background. Once you are done, the tool allows you to download a yaml file. Open up the file in Swagger and voilà! Beautifully formatted API endpoint. Can be useful to document API for your application.

Pretty fascinating.

Moving away from 1Password

I have been using 1Password for a very long time. However, for the past year or more, I have come to rely on Safari (on macOS, iOS and iPadOS) to suggest me strong passwords, storing them for me and ultimately, me making a manual copy/paste to 1Password.

Last month, I turned off my auto-renew on 1Password thinking it gives me 6 months to transition over. I have been using 1Password for Username/Passwords and URL and Backup codes. I have never used 1Password to sore my credit card information. In fact, I was a late adopter of that and just waited until ApplePay came out. I now have one credit card info stored in my Safari for those websites that still don’t accept ApplePay.

Exporting data from 1Password and importing them into Passwords (or iCloud Keychain) was easy – but of course there are a few curve balls. There are two things you need to ensure

  1. Make sure all your passwords in 1Passwords have a URL (better if they are valid URL’s)
  2. iCloud Keychain does not like quotation marks (”); this is something you will need handle them

But once you are ready, you can export your passwords form 1Password by selecting the vault and then navigating to File > Export > All Items...

1Password will ask for your Master Password. And before hitting the done button make sure you change the file format to “iCloud Keychain (.csv)”.

Now, remember those quotation marks? You can now edit the csv file and look for them and reset those passwords – yup thats a manual process. I had a few, so I logged into to those applications, changed my password and let Safari handle them for me. Once this was done, I went and deleted those entries in the csv file.

Now import the CSV file into iCloud Keychain from System Preferences -> Passwords. Hit the three dots at the bottom of the window and select “Import Passwords…” and select your csv file.

An important step after you do this, is to disable 1Password extension on your Safari browser on all your devices. This will help you focus on using Passwords. On your macOS, you can simply type “Passwords” in your spotlight search and it will bring up the Passwords manager. I wish Apple makes these things consistent and bring them on iOS and iPadOS too.

The best part of the transition was that I have probably opened 1Password once. The transition has been super smooth.

Now I hope there is something for 2FA as well.

One of the best CLI utility I have used in a while

Having worked on Linux early in my career, it is hard to get away from the cli. I continue using cli as much as I can and am constantly on the look out of tools that can make my life easier.

Last week, I came across The Fuck utility. This is literally one of the best utility I have installed and used in a very long time.

I learned typing as a school subject when I was 16. Yes, I can type fast, but when it comes to cli commands, I’m error prone. And every time I type in a command that doesn’t work – 90% of the time its because of a spelling mistake or a missing character. I would literally blurt out “fuck” in my mind and roll my eyes and in some cases out of frustration I would type in “fuck” multiple times.

Well now, I literally type fuck and it auto corrects my command and voilà.

It works for most of the commands I use on a daily basis and my usage isn’t vast. I mainly use GitHub, Docker, node.js, curl, etc. Here is a demo from their GitHub page:

No. I do not use CLI for email.

Microplastics are confirmed in human blood for the first time

Brad Bergan for Interesting Engineering:

These tiny particles can move freely throughout the body, and become stuck in organs — which could cause significant health issues. But now that we know, scientists are on watch to understand the full scope of effects — both short- and long-term, on human health.

It’s an unnerving discovery, but we’re all in this together as scientists rush to explore the potential health effects.

fuck.

Weekly Digest 03/25

Apple developing new 15-inch MacBook Air that could come in 2023:

According to DSCC supply chain information, Apple is planning a new variant of the MacBook Air for 2023 that will feature a screen size of around 15-inches. The company is also reportedly planning to increase the display of the current 13.3-inch MacBook Air to something that is “slightly larger” but still between 13-inches and 14-inches.

💻

Considering the new MacBook Pros with the notch and the thin bezels, I think the new MacBook Air probably may come in 13″ & 15″ or 14″ & 16″. My bet is on the latter. This is a good move by Apple.

During the pandemic, my son was force to be virtual in 2nd grade and he was using a MacBook Air. The screen size although decent, for him it always felt not enough. Making a larger screen would be perfect for school.

And of course I’m looking for more colorful MacBook Air’s these things are begging to be personalized.


An Introduction to Generics:

Generics are a big new language feature in 1.18. These new language changes required a large amount of new code that has not had significant testing in production settings. That will only happen as more people write and use generic code. We believe that this feature is well implemented and high quality. However, unlike most aspects of Go, we can’t back up that belief with real world experience. Therefore, while we encourage the use of generics where it makes sense, please use appropriate caution when deploying generic code in production.

That caution aside, we’re excited to have generics available, and we hope that they will make Go programmers more productive.

👨🏻‍💻

I like this blog post. Great explanation of a new programming feature and ending it with an honest request to the community to use generics to help make it better over time.


The Four Innovation Phases of Netflix’s Trillions Scale Real-time Data Infrastructure:

My name is Zhenzhong Xu. I joined Netflix in 2015 as a founding engineer on the Real-time Data Infrastructure team and later led the Stream Processing Engines team. I developed an interest in real-time data in the early 2010s, and ever since believe there is much value yet to be uncovered.

📺

This was one of those articles that I shared after reading a few paragraphs. Zhenzhong talk about the four phases of real-time data infrastructure’s journey in Netflix. I enjoyed reading this cause every time Netflix had a business motivation they had unique challenges on the way, the bets they played and the learnings they had along the way have clearly shaped Netflix to what they are today.


TUIC:

TUIC was designed on the basis of the QUIC protocol from the very beginning. It can make full use of the advantages brought by QUIC. You can find more information about the TUIC protocol here.

👨🏻‍💻

This is pretty cool. Something to play with for the weekend 🙂


Excited about this: