Lenovo E450 Battery Replacement

Lenovo E450 is infamous for its complex internal that does not allow easy access to the parts. If you want to replace batteries, you should disassemble almost everything.

However, at least that is something doable. But if you connect the battery in the wrong way (by not following the right steps), even though the battery is compatible to your E450, the firmware will say that the battery is not compatible, thus reject charging it.

If you want to avoid that issue, you should follow this procedure:

  1. Remove Lenovo PowerManager and its service from the system.
  2. Go to bios, and turn off the internal battery.
  3. Open the bottom panel of your laptop and disconnect the black cable to your motherboard. Then connect AC and boot into Windows. After log-in the system, turn off the power completely.
  4. Change the battery (you need to disassemble your laptop)
  5. Connect the battery black cable to the motherboard
  6. Boot the system
  7. Check if bios is not complaining about your batteries compatibility
  8. Log in Windows
  9. Re-install Lenovo PowerManager

If you have already installed the battery and suffering from the battery incompatibility issue, you can follow the same procedure – but just skip the step #4.

 

Started a Coursera Course on Kotlin

Kotlin is a wonderful language full of surprises for Java old-timer. I started a Coursera course from JetBrains. A little expensive for a 5-week course, but it’s OK. I think it’s worth it because its from the original Kotlin designers.

After watching it, I think I should create a YouTube video introducing useful Kotlin resources to my fellow engineers.

Becoming a Golang programmer

Just became a Golang programmer and almost immediately started to hate it because there was no graceful mocking library such as Mockito. Tried to build one, but not successful because of the limitation of Golang reflection mechanism. Even the dependency injection was hard.

Came to understand why even Google had to create a DI tool based on the code generation, not on reflections.

Upgrading your ASUS M402MA to Windows 10: The shortcut

The most popular way of upgrading your ASUS notebook to Windows 10 might be do some Windows update and wait for Window 10 upgrade icon appears.

However, if you recently purchased the EeeBook and can’t wait for it to complete Windows update, the fastest way is to reset your Windows 8.1 with the aid of recovery tool. Just prepare Microsoft account, and a freely usable WIFI access point.

Just go settings > update and recovery > recovery and choose “Remove everything and reinstall Window”. It will return your notebook to the factory settings. After the restart, to complete setting, it will request you to configure WIFI connection. Just choose to use the WIFI that you can use. Completing it, it will also ask you about your Microsoft account (for example, your hotmail ID and password). Just enter it, and finish the reinstallation.

After the reboot, it will notice you that an upgrade to Windows 10 is possible, and if you agree, the upgrade procedure will be engaged.

Setting up a local docker image repository

A Docker registry server is also a docker container: which means that you should first download the image of the registry server from the global docker image server, and run it as a container.


$> sudo docker pull registry:latest

$> sudo docker run -d -p 5000:5000 --name local-registry -v /tmp/registry:/tmp/registry registry

After that, you can actually upload your docker image to the local registry by (1) creating a tag for the image, and (2) register the image to the local registry server.


$> docker tag ubuntu-git-nginx:0.2 localhost:5000/ubuntu-git-nginx:0.2

$> docker push localhost:5000/ubuntu-git-nginx:0.2

Note that you push your image by the tag you have just given, not by the name of the image.

Finished Udacity course “Authentication and Authorization: OAuth2.0”

Today, I finished the course “Authentication and Authorization: OAuth 2.0”.

Link: https://www.udacity.com/course/authentication-authorization-oauth–ud330

Course was relatively easy and based on the implementations from the previous course “Fullstack Foundations”. Same instructor, and the same style of codes. (you’d better not to expect ‘cleverness’ in them – all the codes shown in the lecture are just for the demonstration)

Anyway, I think I’m ready to move on to “Full Stack Web Developer Nanodegree”.

Link: https://www.udacity.com/course/full-stack-web-developer-nanodegree–nd004

Finished Udacity course “Full Stack Foundations”

Today, I have finished the beginner course for the full stack developers, called “Full Stack Foundations”.

Link: https://www.udacity.com/course/full-stack-foundations–ud088

Easy, but interesting because it gave me a chance to glimpse on Flask. The framework was my first micro web framework. Next, I think I should subscribe “Authentication and Authorization”.

Link: https://www.udacity.com/course/authentication-authorization-oauth–ud330

After that, I will move on to “Full Stack Web Developer Nanodegree”.

Link: https://www.udacity.com/course/full-stack-web-developer-nanodegree–nd004