# Macbook air 13” 4mot/4/40000002: exhaust-0

Well the title is clear right? I ran the Apple Hardware Test (AHT) because our model was from 2012.

• Switched off the macbook
• power on macbook
• press and hold ‘D’

I ran the extended and more advance test which takes a bit longer. But it gave me the message:

## 4mot/4/40000002: exhaust-0

it said that the fan was broken. It was exactly what I expected due to the noise of the fan.

Our model was an A1466 and the fan replacement would cost me 145 euro at an Apple care center, so I bought the part online for 26 euro.

Here is the step by step ifixit guide. Please note that you need a P5 pentalobe screwdriver which is Apple specific. I bought it online for 5 euro.

I have spend 38 euro inc shippingcosts. You can get the screwdriver really cheap from aliexpress, but the shipping takes a long time and I cannot live that long without my macbook. Same for the fan it seems. You can get both for 9 dollar without shipping costs but it will take a while to arrive.

On the left is the new one, right side is the old one.

The hardest part was opening the zif connector to reattach the data kabel for the new fan.

The zif connector is so small that it is hard to open.

Running the hardware diagnostics tool can confirm that replacing the fan is a succes. You will not get the 4mot/4/40000002 exhaust error again.

Good luck with the fan replacement!

# Manage users for webform auth missing option in Visual Studio

and then there was this stacktrace and error… I have not had this issue before. It was since the 4.6 frameworkwas installed.

Thankfully I found this stackoverflow answer which resolves it:

in notepad++ and ctrl+g (go to) line 989 and give the string appId the value of “1” instead of the stringutil.blabla

No more error on:

StringUtil.GetNonRandomizedHashCode(String.Concat(appPath, appPhysPath)).ToString("x", CultureInfo.InvariantCulture);

Good luck!

# Calculate km distance between two latitude longitude points from two floats

Having a store locator on my to do list, I started months back with storing the latitude and longitude for the stores in a database. I forked this repository in 2012 https://github.com/bjorn2404/jQuery-Store-Locator-Plugin in order to have something like a store locator on our website. The downside to that store locator is that it is all client side and puts a copy of all your customer data on the internet. It is great data for your competition. So to disclose as little as possible and still serve your valued customers, I decided to do the calculation on the backend. Closest to the data. So that would be on the SQL server.

SQL Server has datatypes like points and geometry since 2008. With this SQL statement you can get the distance between my location

##### lat 51.69917 lng 5.30417 and the locations in the stores table.
SELECT top 10 StoreID
,StoreName
,StoreLatitude
,StoreLongitude
,StoreCity
,round((geography::Point(StoreLatitude, StoreLongitude, 4326).STDistance(geography::Point(51.69917, 5.30417, 4326))) / 1000, 1) as km
FROM STORES
where StoreLongitude < 150 and StoreLongitude > -150 and StoreLatitude < 90 and StoreLatitude > -90
order by (geography::Point(StoreLatitude, StoreLongitude, 4326).STDistance(geography::Point(51.69917, 5.30417, 4326)))



The third parameter for the point data type is 4326 which is an enumeration:

And about 4326 SRID. It also called WSG84(http://en.wikipedia.org/wiki/World_Geodetic_System) system. It's the most common system to represent point on spherical(not flat) earth. It uses degree,minute,second notation and it's x and y coordinates are usually called latitude and longitude.

SRID (Spatial Reference System Identifier) : https://en.wikipedia.org/wiki/SRID

This post is more of a reference for me to lookup how to calculate distances on the Microsoft SQL server in SQL. But maybe it helps others too.

Good luck!

Yesterday 9 September 2015 a three year old comic became reality:

Jun 19, 2012 source http://hijinksensue.com/comic/surface-tension/

Apple released the Ipad Pro. It is a larger screen similar to the surface dimensions and a keyboard in the cover like the surface and has pen input like the surface.

26 oktober 2012 Microsoft released the Surface RT. A tablet with pen input, keyboard cover etc. The OS is not the full Windows version (just like the iPad pro now)

The pro edition of the surface did have a full version.

This is not the first time that apple claims to have a new product. Back in 2000 Bill Gates had a Lenovo tablet with monochrome screen:

two years later he had a Fujitsu tablet with a color screen and Windows XP (2002)

Besides tablets, there were mobile devices. PDA’s running Windows Mobile The predecessor of Windows Phone as we know it today.

Pocket pc started around 2000 and became Windows Mobile in 2002. I have had devices with applications to send mail and browse the web. run games etc. before the launch of the first generation of iPhones.

Steve Jobs said back in 2007 when they released the very first iPhone:

“Who wants a stylus? You have to get em', put em' away. You lose them. Yuck.”

But back on topic: the iPad pro is less than I expected. I expected it to run full mac OS X el captain. But the OS is not optimized for touch input. So it seems that Apple will run iOs and OS X side by side for a few more years. Microsoft made the step when moved from Windows Phone 7 to 8 to run everything on the same kernel. It is a hard step. A lot of people fell over it. But it was necessary and really inevitable. But today all (or almost all) Windows Phone 8.x devices will have the Windows 10 update and will run the same apps on their phone as on their laptop/desktop as on their Xbox. This whole concept will be copied by Apple in a year or two maybe three and will be sold like they invented it.

Please do not get me wrong, I like Apple and like their design, usability and the way that the hardware is sold together with the software. The way they update their mobile devices. I like that more then Androids by the way. But the thing that I dislike is that their marketing is so good that less tech aware people believe that Apple invented the wheel and those people share their view with even more tech aware people who assume they are right. But when the Apple fans encounter someone with more technical knowledge they often avoid a discussion.

# When you forget to set a column to auto increment in SQL Server

If you add a new table and mark the ID column as primary key, but you forgot to set the int or bigint to auto increment, you can not fix this in the SQL Management Studio.

There are several ways to do this, I ended up removing the primary key, dropping the column and re-creating it.

Dropping the column also gave me the error about dropping the whole table and re-creating it. So I had to do this with some SQL, so no GUI today but just these two small SQL statements. I hope it helps, otherwise it is just an online backup for when I forget how I fixed this.

alter table YOURTABLENAME add YOURCOLUMNNAME bigint IDENTITY(1,1) primary key
alter table YOURTABLENAME drop column YOURCOLUMNNAME


Good luck!

ps. when you use select @@version you get to see what version of SQL server you are using. I had

Microsoft SQL Server 2008 (SP3) - 10.0.5520.0 (X64)
Jul 11 2014 16:11:50