Like a lot of people, I am an Apple fan. Since I am also an iOS developer, I watched the recent WWDC developer conference live and felt delighted with all the new features that Apple unveiled.
One of those cool features was copying text through the camera app and also from already captured photos in your photo library. Apple calls it “Live Text”. I could clearly visualize situations in my workplace where this feature could come real handy.
Copying text (with bullet points) from a whiteboard instead of capturing a photo would be such a positive quality of life change, I thought. Also, digitizing text from meeting notes would be so awesome! The possibilities that this brings to the way I do work was thrilling to think about.
So, with all this in mind, I hastily installed the iOS 15 developer beta software on my secondary phone, an iPhone 8Plus. And then I experienced the most disappointing iOS update ever!
The phone did its thing and showed me the lock screen. I put in my password, opened up my camera app, pointed it at the board and.. nothing! 🤔
I opened the photos app found an appropriate photo with typed text and… nothing again! 🤷♂️
So I searched online and found some articles saying that this feature would work only on devices that have an A12 chip or newer. That is an iPhone XS or newer. 😥
But didn’t Apple promise that iOS 15 would work on iPhone 6s and above? Doesn’t “iOS 15” mean everything? So Apple thinks that my phone cannot handle this? I’ve never felt my phone was slow, so why can’t it do this text capture thing?
I am sure Apple would say that there is some hardware limitation on my 8Plus’ chip, such as a missing technology, required to use this feature. But to that I say “then why does this text capture work using Google Lens on the same phone?”.
This particular incident has made me realize Apple’s recent hardware sales strategy. And that is to build a new chip, give it some fancy marketing name, say it can do some things not possible before and then make software features just available on those newer phones. I’m not saying it’s a lie, I’m just saying it sucks!
Obviously your older phones wouldn’t be able to do those new things if Apple deliberately holds back on those features. It’s disappointing but a fact. One that we have to live with, unless of course you buy a newer phone. 💸😔
By the way when I say in this post’ title that “nothing happened”, I mean that I could not figure out what I got from this upgrade. Definitely not the live text feature, and looks like nothing else either.
Another week, another YouTube video! This time I am doing a kind of opposite action to what I did in my previous video. 😎
In this video, I demonstrate how to merge multiple PDFs into a single PDF. I normally have to do this when I ask someone to sign a specific document but they then just sign the one page that needs to be signed, scan only that page and send that to me. 😥
So I end up splitting the original PDF first by excluding the “to-be-signed” page (see my other post on splitting PDFs). Then I just merge it all together with the Power Automate Desktop Flow that I built in this video.
It has been a while now since I have written anything over here. At work, I am pretty much writing non-stop. Although sometimes it does feel like I might be writing too much and my emails are getting a tad too long. 🤷♂️
Anyways, this week I released my first YouTube video. I have been wanting to get into the whole YouTube thing for a while now. One of the main reasons why I got into it is a tweet by an Apple tech expert that I follow.
He basically mentioned that you should try and share whatever knowledge you have, however small it may be, because there is always someone who will benefit from it. He wrote that by sharing your knowledge you are enriching others lives. I believe all of that.
So I recorded, edited and posted my first YouTube video “Splitting PDF using Microsoft Power Automate Desktop” earlier this week. The whole experience was enlightening, to say the least.
Of course it was not all easy going. I had issues through the entire production. But all those troubles actually helped me understand the different components a little bit better. I think for my next video I will have it easier. 🤞
Oh by the way, to create the below YouTube channel icon, it took me around 4 hours! That’s a globe with the land created out of 1s and 0s. Yes, I think I may have done too much for something that is going to appear very very small on YouTube. But I feel good… ✌️
So, here’s the video. I know I have to tighten things up for future videos. But as a first attempt I think its pretty good. 🕺
I have released today my second iOS app. This time it is an Apple Watch-only app called ‘WatchABC’.
It is a very simple teaching tool that you carry around on your wrist to teach your toddlers their ABCs (and their 123s). 😊
I got the idea for the app when my young one kept playing with my watch. He was swiping through my weather and calendar apps. I thought to myself, “Wouldn’t it be more fun for him if he could see something that he understands like the alphabets?”.
It has always been my desire to develop for the Apple Watch. I was curious about what went into designing for such a small user interface. It seemed difficult especially since I have hated designing UIs for the small iPhones.
And when Apple introduced SwiftUI (the new UI design toolkit) last year, I had the overwhelming urge to experiment with it.
So long story short, I built WatchABC for the Apple Watch entirely in SwiftUI. 🤓
You can check out the app on the iOS App Store. You can also view the details of all my apps on my iOS Apps page.
I want to talk about a very important topic today. And that topic is “Meeting Lateness”.
Over the years, I have noticed that most of the meetings that I have been in have started late. The main reason for that is people joining in late.
Also, this issue has not showed any signs of getting better. Honestly I feel that it is getting worse.
I know this may seem like a silly thing to talk about. But there are published scientific researches that highlight the negative effects of people being late for scheduled meetings.
If you know me, you will know that I push myself to be on time for every meeting that I am a part of. And when I see the other participants coming in late, I find it disrespectful and rude.
What does the research say on this topic.
I have come across a few research studies on the topic of “Meeting Lateness” and given below are some of the highlights. You will see that none of these are desired outcomes.
Individuals start having negative feelings towards the late comers and therefore this affects the meeting effectiveness.
People start displaying negative behaviors, such as interrupting and side-talking, if a meeting starts late. It gets worse the later a meeting starts.
Instead of focusing on the meeting agenda, such as brainstorming or problem solving, the meeting gets bogged down by the previously mentioned negative behaviors.
How I try to be on time for meetings.
I try to follow some basic principles to help me be on time for meetings.
First and foremost, I respect other’s time. If I am the person responsible for someone just waiting, I would hate it because I know how that feels.
I ensure not to schedule back to back meetings if the meeting venue is far apart.
I will only join meetings that has an agenda and my attendance is mandatory. You should not participate in meetings where your presence is for “just-in-case-a-question-related-to-your-area-comes-up” reasons.
I will not join meetings where the actual topic can be hashed out over a quick phone call or an email.
These are simple principles that I adhere to and I do believe that anyone can follow the same. So I request you to try these out.
By the way, I have read about how Larry Page had made it his primary objective to make every meeting at Google more productive when he took over as CEO in 2011. I particularly like the “50/25” rule that he had supposedly implemented.
The “50/25” rule states that you should keep hour-long meetings to 50 minutes and half an hour meetings to 25 minutes. So you get some time to prepare for the next meeting, take a bathroom break or walk to your next meeting location.
I wish every company would implement this rule. 🤞
What you should/shouldn’t do when you are late.
If you are late for some reason beyond your control, I request you to follow the below suggestions.
You should apologize. And it is important that you be sincere in your apology.
You should not give excuses where you are name-dropping someone senior in your organization.
A common excuse that I have seen is “I was with the CEO” or “I was with the Director”. These types of excuses indirectly make it seem to the others that they are less important or that the meeting is less important. Also this is especially bad if you are the one who set up the meeting in the first place!
You should not make small-talk or tell jokes after coming in late. Nobody wants more time to be wasted.
If the others have started the meeting and are already deep into the discussion, you should not interrupt their flow. Honestly, if this happens, you were probably not needed for the meeting anyways. 😊
You should not request the others to rehash the part of the meeting that you missed. It is your responsibility to glean whatever you can from the remainder of the meeting.
A final request.
Since meetings have become a huge part of every organization, I believe that there should be a top-down initiative to eliminate this issue of meeting lateness. But until that happens we all have to tackle this problem ourselves.
So let us all take a personal commitment to be on time for all our meetings. This will definitely make the workplace more productive and the environment more respectful. 👍
References
Allen, J. A., Nale Lehmann‐Willenbrock, & Rogelberg, S. G. (2018). Let’s get this meeting started: Meeting lateness and actual meeting outcomes. Journal of Organizational Behavior, 39(8), 1008-1021. doi:http://dx.doi.org.spjain.idm.oclc.org/10.1002/job.2276
Clark, P. (2018). A quest to banish lateness at meetings and claw back lost time. FT.Com, Retrieved from https://search-proquest-com.spjain.idm.oclc.org/docview/2121703892?accountid=162730
The Pomodoro Technique® is a registered trademark by Francesco Cirillo.
I use the Pomodoro Technique® regularly to manage my time. And I believe that it is the most valuable time management system that I have learned in my working life. 😍
What is it?
I recommend the creator’s website at francescocirillo.com where they explain the system very clearly.
In essence, you work in 25-minute blocks of time. And you work only on one task in those 25 minutes.
At the end of the work time, you take a 5-minute break. After that break time, you start another “25-minute work then 5-minute break” cycle.
Each of these 25-minute time chunks is known as a Pomodoro®.
With this technique, I am able to achieve maximum focus since I am working only on one task at a time. I am able to do more work and I truly believe that I am producing higher quality output.
And, honestly, multi-tasking does lead to poorer quality work. 🙊
When do I use it?
Typically, I tend to use it in the following areas.
Preparing project documentation
Learning new programming languages
Application development
Writing blog posts 😃
For all these cases, it would normally take me a large amount of time to complete. And without the Pomodoro Technique® I would not be able to maintain my focus throughout.
Most of my day I spend on meetings, conference calls and email management 😔. And I do not use this technique during those times.
Generally, I am able to do about 3-4 pomodoros a day. At the end of each Pomodoro®, I feel a great sense of accomplishment. And because of that I really enjoy those 5-minute breaks!!! 🎆
What tool do I use?
I use the website kanbanflow.com that has a Pomodoro® timer for time tracking. I have pinned the site to my web browser as the first tab!
This website has a Kanban board (see Kanban board wiki) where I track my pending tasks. So when I use the built-in timer and select one of those pending tasks, my time on that task gets automatically tracked.
So, for example, I am able to exactly know how much time I spent on a specific project’s documentation. Obviously, this is valuable information to have when preparing schedules for future projects.
When I select a task and click that timer, I automatically go into “super-focus mode”. 🤓
In Conclusion
If you have worked with me in the past, you very well know how I sing praises about the Pomodoro Technique®.
I have enjoyed great benefits from the use of this system over the past several years. You have to try it to believe it!
Oh, and by the way, I took 3 pomodoros to write this post. 😉
Important Note
This blog is not affiliated with, associated with, or endorsed by the Pomodoro Technique® or Francesco Cirillo.
EDI stands for Electronic Data Interchange and, simply put, it is the exchange of data and documents between computers.
I have worked on around 30-odd EDI projects over the past 10 years. All of them were about “integrating” external client systems with my company’s systems. So we also tend to call them “Integration Projects”.
Note that in the remainder of this post I may use the terms Integration and EDI interchangeably.
So, I will be covering the following:
What is EDI?
How to establish EDI.
I will try to explain the concepts in such a way that the non-IT among us can understand what it is. I will of course be explaining it based on my specific integration experiences.
What is EDI?
I like to think of EDI as a translation layer between 2 computer systems that speak different languages.
I have given here a diagram with a particular transaction between an ERP and a WMS. The diagram helps us visualize how EDI, as a translation layer, facilitates the automated exchange of sales order related transactions.
The most important word here is Automated. There is no human intervention required. The EDI layer automatically translates the messages to what the receiving system can understand. Without this layer in between, there is no way that each system can understand the other.
Also, without the EDI, we would have had to do a lot of manual work on both systems. Not to mention the redundancy of the efforts involved. You can also imagine the amount of back and forth email messages in a sans-EDI world.
How to establish EDI.
The EDI layer mentioned above is actually broken down into two sides. One is the client-side EDI and the other is the company-side EDI.
Each side’s EDI layer is responsible for taking the data from it’s master system (EDI or WMS) and passing it onto the other side’s EDI layer.
The integration therefore boils down to how the two EDI sides talk to each other. So we need to consider 2 important points.
How to structure the message (the common language), and
How to exchange the message (the communication method).
When we say message structure, we mean the common language that both EDI sides can understand. There are many standards out there but most companies I have worked with prefer XML as the message structure. What I love about XML is that it is human-readable.
Once we have the EDI message in a standardized structure (such as XML), we have to figure out how to send that file to the other side. In other words, what is the communication method? Once again there are many ways to do this. But based on my experience the two most common methods are SFTP and AS2.
With either method, the EDI files are encrypted and sent across the internet to the other side.
It is becoming more common these days to use AS2 rather than SFTP. The reason being that when you use AS2 the sender will automatically know when the file has been successfully received and decrypted. SFTP does not provide this level of confirmation to the sender.
In Conclusion
With EDI, you get the speed of automation and the associated data accuracy. You can do some actual productive work rather than duplicated data entry jobs.
I have seen many articles online where companies that adopt EDI talk about the huge cost savings from implementing it.
My hope is that this article has provided you more clarity on the concept of EDI. And if you happen to be on your company’s next integration project team, I am sure you can impress them with these concepts. 😉
We all use Microsoft Excel in our place of work. The most common usage is for presenting data in a nice tabular format. Beyond a doubt, that is a use-case where Excel excels! (pardon the pun…)
People who start using Excel start with basic arithmetic calculations (using SUM and AVERAGE functions).
Later on, they graduate to using more complex functions such as CONCATENATE and VLOOKUP. Learning these makes you immediately realize the power that Excel has just given you. VLOOKUP mastery (especially) can make you look really good to your managers. 🙂
What I want to touch on today is how learning and using Excel VBA can make you a superstar! 🌟
What is VBA?
VBA stands for Visual Basic for Applications and it is commonly referred to as a Macro. So, what is it? It is a powerful tool to automate repetitive tasks (such as building KPI reports from raw data).
The best part about VBA is that it comes free along with Microsoft Office. To view the VBA Editor, all you have to do is enter the keyboard shortcut “Alt + F11” while Excel is open.
How I Have Used It.
I have used it quite a bit in my organization for various purposes. The most useful application has been in adding validations to Excel upload templates.
I work at a logistics warehousing solutions company as the Warehouse IT Head. People here use Excel templates to create various documents in our core warehousing application. In the last 2 years I have created VBA-validated versions of all these templates. We achieved 2 things as a result.
The number of failed uploads (due to incorrect input) has dramatically reduced. This has saved time and therefore cost.
It has also reduced the IT Help Desk service calls (more time and cost savings).
Training new users on how to use the templates has become very easy.
Who Should Learn It.
Ideally, everyone! 😛
Yes, yes, I know that is not practical. My hope is that this post will inspire you to at least make an attempt at learning it. I will explain how I learned it in a bit.
I believe that, at a minimum, your IT applications guy should know VBA. They should then be tasked to go around and automate others’ Excel work. As I mentioned earlier, doing this has great productivity and cost benefits.
How I Learned It.
I used the traditional way of learning. Through a book.
Specifically, I used Excel 2010 Power Programming with VBA by John Walkenbach. A superb book where the author gradually takes you from the basics to the more advanced topics. I suggest you have a read and see what I am talking about.
Once I had read through most of the book, I found areas of my work which I could automate. To begin with, I started with automating some of my “simple” calculation based repetitive tasks.
Then I started looking beyond my personal area and towards my team’s tasks. Wherever I could, I made macros to help them save time. The expressions I saw on their faces when I changed 20 minute tasks to 1 second clicks were priceless! 💎
In Conclusion
Learning Excel VBA is not easy. But I guarantee that you will be amazed by the benefits you will get from learning it. If that is not possible, get your organization to invest in VBA training for your IT department.
I will be sharing various code snippets in my future posts. So stay tuned! All you have to do is experiment and keep an open mind. You will reap the benefits (and adulation ❤️).
I love to build applications, specifically for the iOS platform and the Web. And at my current company I have the opportunity to use Excel VBA for automating tasks. With this blog, I hope to share my experiences and knowledge in those areas.
But, since this is my personal site, I may venture into my other interests as well. 😉