Wednesday, September 2, 2020

How IT is fixing the mistakes and evolving

HI, 

So what did change in the world of IT for the past 2 decades? Well literally everything right from the keyboard and mouse (became wireless) to monitors became flatter and thinner and brighter. But today wanted to bring something more basic to discuss. You know we all keep talking about AI and Machine Learning if you back just a decade and relook the comments on posts of those articles you will see most of the industry would have commented that is still in it's inception and it will take forever and next generation will be able to harness the benefits. Guess what AI and Machine learning are here and they are defining how we are working towards achieving our daily and annual goals. 


So the industry roughly had the IT boom like 2 decades ago when companies like Apple and Microsoft started making hardware and software for people like us. Now all was good people started to accept new technologies and all started to get IT Aware but somewhere mid stream people started to tame the RockStars of the IT as slaves and people with absolutely no skills and information started to drive the IT Industry and this led to the whole chaos which we live in today. And if you watch closely all the major flaws and mistakes came in picture only when the mass hiring of engineers started to happen(I am no exception to that process but I gladly accept that). Now imagine someone having absolutely no clue in Operating System having a Mechanical Degree in Engineering designing a WebPage for an online e-commerce portal. Image how buggy that system designed will be some of us will argue that they have had great mentors and great books and blogs to refer. But imagine the mistakes they did and got passed on to their subordinates and juniors like the ripple or the domino effect. We are living with those mistakes in everything in IT, you can pick anything even as basic as Nomenclature to as big as Network configuration. All is messed up and you know the biggest contribution to this chaos is from the companies who boast to Marvel in the field of IT. And you cannot even get started about how much I love the BSc and Commerce graduates coming into IT. 


Well this would have never ended and we would have just cursed the hardware ( I mean you also have mechanical engineers designing MicroProcessors chips but let's just say that is really a handful and they ended up there because of their shear passion and dedication and not some mass recruitment). I mean there is no end to how much you can scale up (both horizontally and vertically) as long as you can drain some more money from the poor client who believes the IT companies know more than them about Computers. May be once in a year we should look at some of the specs of the Rovers that went across planets to gather data. I mean if you look at the hardware they had and the software written we should feel not only ashamed but guilty of how much we need to know even before we start writing the first "Hello, World!" program. 

Somewhere down the line came up with a brilliant Idea of having setup Infrastructure in Cloud and this can be the start of correcting the mistakes we did in our Infrastructure and I believe it will take some time to get the morons out of the Industry who are only surviving because they can point out mistakes in someone's work or share a warm mug of coffee with someone important. 

Now we have infrastructure as an Application you can built a failover over cluster with click of buttons and the amazing part is you will be getting the almost best thing possible. I know it takes away customisation out of the picture but given what we are dealing as of now that can be really helpful. So what about the software well that is changing too and we have web based workflow applications which can stitch our work together to fetch the data do the ETL and create reports. This is shaping up really fast and we cannot keep up with all the providers coming out with new tools and designs literally everyday. 

We can create a service without thinking about the server core and memory. You can create the service and just change the tier when you hit a bottle neck. The only downside is the cost which I think is wise keeping your own infra which gets obsolete every 5years. 

What we will witness and MARK MY WORDS WE WILL. The next decade will be the evolution of people working in IT. To begin with the Ways of Working will change. No one will be required to work from Office unless you want to. People will be working from the place they like and will have a device which they like to work on. You will see the desktops replaced by mobile tablets and meetings getting boring as the audience will change. Yes people will start working with smaller entities which reflect more of their personal nature rather than having to work monotonically in IT Giants. Kids are learning coding today to create applications so when they hit the IT industry a decade later we will have but no room for people who think just sitting around quietly having a warm mug of coffee will keep their jobs safe. Or someone who has a habit of rubbing nose into everyones work with no contribution whatsoever will have to sadly go home and find something more useful to do with their lives. People will start to speak for themselves in IT which is taken care of by just a bunch of people who take the accolades and demean the hardworking people. 

You will stop saying the jargon YOU NEED TO BE A SMART WORKER. I mean literally the only people speaking these words in IT Giants are the dumbest people I have witnessed in my life. 

We will always have C Perl Python Ruby Java in some form or another. You will need to know the basis of the working of a Hardware and Software before you start working on anything and Kids are learning that now and when they hit the Industry and trust me the only ones entering will be the ones who will be the RockStars only to kick some ass. They will take no BS whatsoever and will only work if they think they will have something to contribute. I mean people will need to make money to keep paying bills but now we all know earning money does not mean working for 8 hours and definitely not in something we do not like to. 

Change is the only thing Permanent


Thanks,

Tushar 


   

Wednesday, February 12, 2020

MagicMouse2 in Windows 10

Well I had been looking forward to getting my hands on Microsoft Surface Arc Mouse for a real long time. But when the time came I had to rethink. In fact I ordered the same and returned the package as it was the Version 1 released sometime in 2016. So when I got a chance to reorder the same I did an overall study and comparison between Surface Arc Mouse and Apple Magic Mouse 2. I chose the later one. There are a quite a bit of things that stand out for Apple Magic Mouse 2 and it's my personal opinion.

Enough of history. Now for the real reason of this blog is to keep or help Windows 10 users get the driver for Apple Magic Mouse 2 so that they can work with Scroll functionality of the mouse. I had to do some study for whole day and then realised there are a couple of ways we can do it. I chose the paid one as well but then it struck me I do not want to pay for some driver and run some third party tool on my Windows just to make a mouse function properly. I hunted down the driver (well it was a couple of hours of googling and downloading). I have put it on a public folder and anyone can download and use it.

So here is the direct link to the ftp location for MagicMouse2 driver for Windows10.

Cheers!!!!

Tushar Kanti


Monday, June 10, 2019

How to grant a local user the access to restart a service

Hi Guys,
Been sometime. Have been working for a project for a close friend of mine. (Yea I am doing some consulting finally). And there have been a plethora of things I did for the project which I wanted to blog on but then time is always against us.

I found this topic interesting and challenging and the work done (after a lot of reading and understanding) was pretty simple. So mentioning the same in today's blog.


We are going to change the permission of a user(local user) to restart a service in a non-domain controlled server. i.e. not connected to an Active directory.

By default a local user will not have permissions to restart a service. If a user goes to the services console(services.msc) he/she will see the start and stop functions to a service being grayed out.
Now to grant him the permissions we can use a lot of ways which is described quite well in the blog 

I did not want to use any third party software and complete the activity using simple pwershell commands. I am assuming the service name to be "Somefoobarservice" and the local user to be "tushar" (just for the name sake).

We need to open an powershell window as an admin. (just right click on the powershell and click on run as admin). Once you have the powershell opened use the command "sc.exe" . This utility is used to communicate with Service Control Manager and Services. You can just type sc.exe to give a help on the utility.


We need to first understand which user has what permissions on the service. We will use the sdshow option for sc.exe utility which will display the service security options.

example : sc.exe sdshow "Somefoobarservice"

you will get an output like the below

D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)

Now it may seem a lot gibberish but it will make sense once we discuss the output.

The first letter in the beginning of the output
S: — System Access Control List (SACL)
D: — Discretionary ACL (DACL)

The first letter after brackets means: allow (A) or deny (D).

The next set of symbols is assignable rights.

CC — SERVICE_QUERY_CONFIG (request service settings)
LC — SERVICE_QUERY_STATUS (service status polling)
SW — SERVICE_ENUMERATE_DEPENDENTS
LO — SERVICE_INTERROGATE
CR — SERVICE_USER_DEFINED_CONTROL
RC — READ_CONTROL
RP — SERVICE_START
WP — SERVICE_STOP
DT — SERVICE_PAUSE_CONTINUE


The last 2 characters are objects (user group or SID) that are granted permissions. There is a list of predefined groups.


AU Authenticated Users
AO Account operators
RU Alias to allow previous Windows 2000
AN Anonymous logon
AU Authenticated users
BA Built-in administrators
BG Built-in guests
BO Backup operators
BU Built-in users
CA Certificate server administrators
CG Creator group
CO Creator owner
DA Domain administrators
DC Domain computers
DD Domain controllers
DG Domain guests
DU Domain users
EA Enterprise administrators
ED Enterprise domain controllers
WD Everyone
PA Group Policy administrators
IU Interactively logged-on user
LA Local administrator
LG Local guest
LS Local service account
SY Local system
NU Network logon user
NO Network configuration operators
NS Network service account
PO Printer operators
PS Personal self
PU Power users
RS RAS servers group
RD Terminal server users
RE Replicator
RC Restricted code
SA Schema administrators
SO Server operators
SU Service logon user

Now I hope the gibberish statement makes much sense. Now is the task to identify the user SID. This is the unique id for which the user has to be granted permissions. Now we can do it a lot of ways. I am trying to pen down the easiest. 
You just type the below command using WMIC ( Windows Management Interface Command).
 wmic useraccount get name,sid
This will list the users and the SID for all the users. you need to copy the SID of the user you want to grant permission to the service. 
Guest           S-1-5-21-2719496566-3729557865-1934094733-501
tushar        S-1-5-21-2719496566-3729557865-1934094733-1011
Something like the above. Now we use the SID of tushar and then update the service "Somefoobarservice" using the utility sc.exe again. This time we will use the utility sdset which sets a service's security descriptor.
Before that we will have to prepare the new security descriptor for the service. Here we will append the new descriptor of the service for tushar to the orignal one( this will help retain the previous user permissions on the service). 

The original descriptor
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)
The new descriptor for tushar. Here we are granting permissions to read the service, start, stop, restart and pause the service. 
(A;;CCLCSWLOCRRCRPWTDT;;;S-1-5-21-2719496566-3729557865-1934094733-1011)
So the new descriptor is (augmenting the new one for tushar to the orignal one, ensure there is no space) 
D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWLOCRRCRPWTDT;;;S-1-5-21-2719496566-3729557865-1934094733-1011)

Now time to update the service(remember the powershell should be running as admin)
sc.exe sdset "Somefoobarservice"  "D:(A;;CCLCSWRPWPDTLOCRRC;;;SY)(A;;CCDCLCSWRPWPDTLOCRSDRCWDWO;;;BA)(A;;CCLCSWLOCRRC;;;IU)(A;;CCLCSWLOCRRC;;;SU)(A;;CCLCSWLOCRRCRPWTDT;;;S-1-5-21-2719496566-3729557865-1934094733-1011)"
Once done you will get a message like "[SC] SetServiceObjectSecurity SUCCESS".
Viola !!! Now the local user has permissions to start, stop, restart and pause the service like an admin. This is one of the ways you can have controlled permissions for a user on a particular service rather than granting him admin permissions on the server. 


Thanks,
Tushar 
























Tuesday, January 1, 2019

New Year 2019

Hi Guys,
It has been some time I have stopped working on my blogs and since the time I did I missed out on something I was passionate about and stopped growing technically. I believe sharing makes you grow more than keeping things to yourself. I promise I will blog more and share more this year.

There are a lot of things I am working on in parallel but not limited to cloudera, sql and aws. I will try to share my experience as much as I can.


Thanks,
Tushar Kanti

Monday, December 25, 2017

The iDream

Since 2008 Apple announced the amazing range of products be it iPod Touch or iPhone or Macbook. I always wanted to lay my hands on one of those. There were times I was envious of the people owning them as they returned from onsite(oh let's not go into the details of meritocracy for the same). I finally decided to have one. The Macbook air can still be explained as because of the  products they have for creativity which is some how shunned in windows but most importantly the feel of having a Macbook is far more awesome.
Also got a iPhone to add flavor to the fun and trust me it is much more hyped that for real. Sure the form factor and the mental satisfaction you have is unparalleled but other than that it is just a phone. When we have so many good build phones coming in less than half of the price value it is definitely a major waste of money. But yes after using it for a couple of months given a chance I will not be willing to go back to Android and Hell Never to Windows phones. But most the credit to this shift of phone is to Nokia for not doing, what was required in time. 


Thanks,
Tushar 

To configure the local loop back adapter in vmware

To install the Loopback adapter:

Click Start > Control Panel > Add Hardware.
Click Next on the introduction dialog box.
Select Yes, I have already connected the hardware and click Next.
Select Add a new hardware device, and click Next.
Select Install the hardware that I manually select from a list (Advanced), and click Next.
Select Network adapters, and click Next.
Select Microsoft as the manufacturer, select Microsoft Loopback Adapter as the adapter, and click Next.
Click Next to confirm the installation.
Click Finish to complete the installation.

To configure the newly created adapter:

Click Start > Control Panel > Network Connections.
Select the newly created connection (named Local Area Connection #, where # is its order number).
Right-click on the selected connection and choose Properties from the menu.
Confirm that Microsoft Loopback Adapter or Microsoft Loopback Adapter # is displayed in the Connect Using: field. If it is not, return to step 2 and retry properties for another adapter.
Deselect everything except Internet Protocol (TCP/IP).
Select Internet Protocol (TCP/IP), and click Properties to open Internet Protocol (TCP/IP) Properties.
Select Use the following IP address:. Fill in the IP address: and Subnet mask: fields. For example, 10.10.10.10, 255.255.255.0.
Click Advanced to open Advanced TCP/IP Settings.
Switch to WINS and select Disable NetBIOS over TCP/IP.
Click OK to close Advanced TCP/IP Settings.
Click OK to close the Internet Protocol (TCP/IP) Properties.
In Windows XP only, Deselect Notify me when this connection has limited or no connectivity to remove the connection warning icon from the system notification area.
Click OK to close the connection properties.

Slowness Syndrome

Have you ever felt the need to fuel the jet??  Do you know what it feels like to drive at 40kmph when you have witnessed 180kmph? That should give you a taste of what it feels like when you need to brake and slow down in pressure of society. Well this is what one can feel a lot of times. People here don't wana walk they just wana stroll and trust me when you wana run they will pull you back. Be it back bitching be it hideous politics oh yes sir they are bound to these abilities you won't find any where. Why can't people go fast and ahead and why can't they let go of their laid back attitude. People who should have been friendly and homely have grown wild and try to make people uneasy and unhappy and it's a shame they find happiness in that. I feel a lot suffocated but have to put on a visage so that all feel I am gelled in.