Hussein Nasser's Blog, page 12

March 27, 2016

Docker and ArcGIS



As a Geogeek, I always want to augment cool new technologies with my line of work, ArcGIS. Docker is proving to be the future in terms of simplifying deploying and scaling.This Youtube series is my attempt to start to unravel the marriage between these two technologies.
This is something new and different in this channel. IGeometry has always been about programming with ArcGIS, we talk about how to build cool software with ArcGIS technology. However, we never talked about how does existing bleeding edge technologies blend with the ArcGIS platform. So here it is.
I'm very interested in Docker and I have actually used it in a small project with ArcGIS. I want to start this series to try to understand where Docker fits in the ArcGIS stack. We might eventually end up doing some implementations of Docker and ArcGIS. If and when possible.
You might say that ArcGIS runs on Windows and Docker runs on Linux, so how can you integrate the two? That is not entirely true, we have a lot of pieces in the ArcGIS technology that actually run on linux and thus supports Docker containers. We will explore that in the coming episodes.
Let us see how this goes.Enjoy
https://www.youtube.com/watch?v=9oA_h9ol3dY







 •  0 comments  •  flag
Share on Twitter
Published on March 27, 2016 19:29

March 21, 2016

ArcGIS Add-ins C# (IGeometry) - 12 - Reception Coverage

h1 a:hover {background-color:#888;color:#fff ! important;} div#emailbody table#itemcontentlist tr td div ul { list-style-type:square; padding-left:1em; } div#emailbody table#itemcontentlist tr td div blockquote { padding-left:6px; border-left: 6px solid #dadada; margin-left:1em; } div#emailbody table#itemcontentlist tr td div li { margin-bottom:1em; margin-left:1em; } table#itemcontentlist tr td a:link, table#itemcontentlist tr td a:visited, table#itemcontentlist tr td a:active, ul#summarylist li a { color:#000099; font-weight:bold; text-decoration:none; } img {border:none;}
IGeometry To stop receiving these emails, you may unsubscribe now. Email delivery powered by Google Google Inc., 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States
 •  0 comments  •  flag
Share on Twitter
Published on March 21, 2016 05:13

IGeometry

h1 a:hover {background-color:#888;color:#fff ! important;} div#emailbody table#itemcontentlist tr td div ul { list-style-type:square; padding-left:1em; } div#emailbody table#itemcontentlist tr td div blockquote { padding-left:6px; border-left: 6px solid #dadada; margin-left:1em; } div#emailbody table#itemcontentlist tr td div li { margin-bottom:1em; margin-left:1em; } table#itemcontentlist tr td a:link, table#itemcontentlist tr td a:visited, table#itemcontentlist tr td a:active, ul#summarylist li a { color:#000099; font-weight:bold; text-decoration:none; } img {border:none;} IGeometry

To stop receiving these emails, you may unsubscribe now. Email delivery powered by Google Google Inc., 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States

 •  0 comments  •  flag
Share on Twitter
Published on March 21, 2016 05:13

March 14, 2016

IGeometry

h1 a:hover {background-color:#888;color:#fff ! important;} div#emailbody table#itemcontentlist tr td div ul { list-style-type:square; padding-left:1em; } div#emailbody table#itemcontentlist tr td div blockquote { padding-left:6px; border-left: 6px solid #dadada; margin-left:1em; } div#emailbody table#itemcontentlist tr td div li { margin-bottom:1em; margin-left:1em; } table#itemcontentlist tr td a:link, table#itemcontentlist tr td a:visited, table#itemcontentlist tr td a:active, ul#summarylist li a { color:#000099; font-weight:bold; text-decoration:none; } img {border:none;} IGeometry

To stop receiving these emails, you may unsubscribe now. Email delivery powered by Google Google Inc., 1600 Amphitheatre Parkway, Mountain View, CA 94043, United States

 •  0 comments  •  flag
Share on Twitter
Published on March 14, 2016 05:05

March 9, 2016

ArcGIS Add-ins C# (IGeometry) - 10 - BARS

We created a new tool to add a device (phone, tablet etc.) and get the current signal and the connected tower, also draw it on the map!
We checked in to github
https://github.com/hnasr/phonatech.git


 •  0 comments  •  flag
Share on Twitter
Published on March 09, 2016 08:38

February 12, 2016

Class v. Object: The simplest explanation possible



Take a cupcake pan and assume it has only one hole for one cupcake.Prepare a cake mix with vanilla flavor and pour it in the pan.Put the cupcake pan in the oven. And wait until it is cooked.Take it out of the oven and you now have vanilla cupcake.Prepare a cake mix with raspberry flavor this time and put it in the same pan.Put the cupcake pan in the oven. And wait until it is cooked.Take it out and you now have raspberry cupcake.Put each Cupcake on its own plate. You only have two plates.Similarly try bake a lemon cupcake, but wait, you don't have a plate to put it on so you can't bake just yet.Eat the raspberry cupcake.Now bake a lemon cupcake, take it out of the oven and put it on the empty plate where the raspberry cake was.Illustrated:The Cupcake pan is the class.Cupcake();
The vanilla cupcake is the an object made from the class.Cupcake vanillaCupcake = new Cupcake();
The raspberry cupcake is a second object made from the same class.Cupcake raspberryCupcake = new Cupcake();
Class is the same, objects are made from a class, objects from the same class can have different attributes.vanillaCupcake.Flavor = "Vanilla";
raspberryCupcake.Flavor = "Raspberry";
The time the cupcake was in the oven cooking is the object initialization time. How much time it take to create an object, store it in memory and all this shit.creationTime = Now; //08:01:05 AM
Cupcake vanillaCupcake = new Cupcake();
initializationTime = Now - creationTime; //08:01:07 AM
//initializationTime is 2 seconds
The lemon cupcake could be created but no plate for it, this is insufficient memory to create an object.Cupcake lemonCupcake = new Cupcake(); //ERROR
Eating the raspberry is basically destroying the object and removing it from the memory.raspberryCupcake = null;
Now that we have an extra plate, we can put our lemon cake in it. We have enough memoery to create another object.Cupcake lemonCupcake = new Cupcake();
lemonCupcake = "Lemon"
Cupcake are just to explain what class and object are but if you really want to understand it, I do believe OOP is learned in a real life project context. So I started a Youtube channel to teach OOP within a context of a real life project where we build a project from scratch and add functionality episode by episode.I don't even have ads on this thing, I have a day job and I do this in my free time. I just genuinely want to share my knowledge out there.Here if any one is interested https://www.youtube.com/playlist?list=PLQnljOFTspQX-XZChZg-b06MJ27nAJQS9
My post on reddit: -Hussein
 •  0 comments  •  flag
Share on Twitter
Published on February 12, 2016 16:30

December 21, 2015

VB.NET Programming Series


Since I started recording GIS videos late 2014, you guys were asking me to start a vanilla series to just discuss programming in the same approach we were doing our ArcObjects. You guys were emailing me, mentioning me on twitter and youtube comments to do this. 
This is for all of you. I sincerely hope you enjoy it, this is the first episode, will continue to post new videos whenever I find a gap. 
You don't need to know anything about programming to watch this series, this is where you start, all you need to get started is explained in the video. Follow this playlist, subscribe to the channel to get constant updates whenever I post new episode to stay up to date
Stay awesome-Hussein



 •  0 comments  •  flag
Share on Twitter
Published on December 21, 2015 17:47

November 3, 2015

ArcGIS Add-ins C# Series


We are back! 

Brand new episode, talking about ArcGIS for Desktop, customizations, describing the setup, Extending ArcObjects vs Add-ins and discussing what we are going to do in the coming episodes! 





Enjoy Guys
Stay Awesome! 
 •  0 comments  •  flag
Share on Twitter
Published on November 03, 2015 07:43

September 27, 2015

New ArcObjects book Published !

Last month I recorded a video on general channel and life update. In that video (or podcast) I mentioned that I'm working on a new book.

The book titled "ArcGIS By Example" has been successfully published. I would have named it ArcObjects by Example really, but the publisher suggested this name so.

The book is extremely useful for those who want to get started with programming with ArcGIS and do really cool stuff with ArcGIS that is not provided out of the box. It discusses how to develop using Add-ins and extending ArcObjects techniques. The beauty of this book is that it uses an example approach, which is a real life scenario project where you build a software to satisfy certain requirements. Not only that, you have 3 examples that you will never find anywhere on the net because simply I made them up. Unless the future version of me beat me to it and published it before I did?

You only need ArcGIS and ArcObjects SDK to work on the book and of course Visual studio express which is free. The book is written for ArcGIS 10.3.1 but you can work with ArcGIS 10.1 up 10.3.1 safely. The book has the list of software requirements too.

Since I'm a gamer, the book references some video games characters and location. Shoot me an email if you did figure them out with the page number :)

Cheers,

Oh, the book is on Amazon. you can get it on your kindle too


ArcGIS By Example
Stay Awesome,
- Hussein




 •  0 comments  •  flag
Share on Twitter
Published on September 27, 2015 00:21

August 13, 2015

Blog, Channel and Life Update


Really long time since I wrote anything here...

It has been a wonderful journey since my wife suggested that I take a publisher offer to write my first book back in 2013. I'm so glad that I did.

Today, the fruits of that decision, four books, a Youtube channel, and a big move in my proffesional carrier..

Listen the Channel Update for more details

-Hussein



 •  0 comments  •  flag
Share on Twitter
Published on August 13, 2015 10:42