Tuesday, January 17, 2017

PolyFill

PolyFill

  1. Definition from the creator?
    1. Alex Sexton also classifies polyfilling as a form of Regressive Enhancement. I think that sums it up nicely.
    2. A shim that mimics a future API providing fallback functionality to older browsers.
    3. A polyfill, or polyfiller, is a piece of code (or plugin) that provides the technology that you, the developer, expect the browser to provide natively. Flattening the API landscape if you will.
      1. https://remysharp.com/2010/10/08/what-is-a-polyfill
  2. Phonegap
    1. “The ultimate purpose of PhoneGap is to cease to exist.”
    2. PhoneGap is the most comprehensive, and most influential polyfill in the history of web development. PhoneGap had the audacity to envision the web as a first-class citizen on mobile, and did so in an era when we were hacking around the bug-laden iOS 4 and Android 2.2 browsers. But like all polyfills, PhoneGap was built with its ultimate obsolescence in mind — in fact, it’s one of the frameworks’s founding goals.
      1. http://developer.telerik.com/featured/diminishing-use-case-hybrid-apps/

.Net Core Business Reasons

.Net Core Business Reasons

  1. 2017-01 Scott Hanselman
    1. If you want to create an ASP.NET Core application that is cross platform;
    2. If want to take advantage of building container applications;
    3. If you want to break free of global installation with side-by-side versions of .NET Core;
    4. If you want superior performance.
      1. http://developer.telerik.com/topics/net/the-net-core-2-wave/
  2. Choosing between .NET Core and .NET Framework for server apps

    1. You have cross-platform needs.
    2. You are targeting microservices.
    3. You are using Docker containers.
    4. You need high performance and scalable systems.
    5. You need side by side of .NET versions by application.
      1. https://docs.microsoft.com/en-us/dotnet/articles/standard/choosing-core-framework-server

Monday, January 16, 2017

Philosophy of the computer program


Philosophy of the computer program

  1. is the term "computer" outdated?
  2. Is the term "electronic" too often aimed at the digital action of a device powered by electricity?
  3. Is electronic different than electrical? An electrical device vs. an electronic device.
  4. Statements that boggle
    1. A computer program is a specification of behavior.
      1. Context: A computer program is a specification of behavior. The purpose of a program is to make a machine behave in a certain way. The text of the program consists of the instructions that the machine follows. The sum of those instructions is the behavior of the program.
      2. http://blog.cleancoder.com/uncle-bob/2017/01/13/TypesAndTests.html
      3. Questions on this:
        1. What is a "specification"?

        2. Is a computer program a specification in whole or in part?

Tuesday, January 10, 2017

Helper Apps - in what form to get started

When the opportunity to create a helper app arises no matter how small the action of it will be the question is in what form should this helper app be made in?

Form meaning through what framework.

In considering a protocol of helper apps the first step could always be:


  1. Console app - work out general methods

Beyond that it might be beneficial to bring the general methods into UI. Either for self development or for the benefit of others. Although it can be beneficial to have a console version for low fi sharing.
  1. WPF - is there a benefit to a UI?
  2. WCF - is there an advantage to the practice of the web?
And then question arises for the .net developer if having the app in another language would be beneficial for continual learning?

So is it better to have a working console app and then copy it into another language so to have those comparisons available? Or is it better to just start in another language?

Sunday, April 17, 2016

Coding Games - note to try

Coding games have always intrigued me. Seems like it would be educational to play with my kids. Here noting a link to a list of games and some initial investigation.

There are two types of coding games:

  1. Sense of coding
    1. Get the feeling or spirit of coding that may not use language features rather custom abstracted methods.
  2. Actual language constructs.
    1. Work with actual language features.


As these sites are investigated it will be determined in which of the two types.

This article suggests a number of sites which was a great seed for this investigation.
http://www.thesoftwareguild.com/blog/coding-games-for-programmers/

https://www.codingame.com/start
Wow, so very sophisticated, so much going i'm hardly sure where to start.
This could be a great way to learn gaming development.
Signup with FaceBook.

https://sourceforge.net/projects/robocode/
Although this is for .net and java the setup is in java, so skipping for now.

http://codecombat.com/
Signup with FaceBook.
So very well done in the modern style that reminds me of what my grade school kids are working with. I like this because it gently teaches you how to move forward.

http://ceebot.com/ceebot/index-e.php
http://www.ceebot.org/index.php?option=com_remository&Itemid=53&func=fileinfo&id=3&lang=en
Download demo version available.
You install a download manager and then start the game.
The graphics are a bit old school although quite advanced.
This seems to be more about the cadence or the feeling about programming more than actual knowledge. Seems excellent for educational institutions for beginning young programmers.

http://www.codewars.com/
This has a github authentication feature however I was unable to get any kind of signup to work on IE or Chrome.









Saturday, September 20, 2014

Thursday, October 17, 2013

Appcelerator Titanium Studio 3.x - Cross-Platform Mobile Development

Appcelerator Titanium Studio 3.x - Cross-Platform Mobile Development

Here are few notes on my first look at this product.

The FB Group for TechMasters TwinCities brought up cross-platform mobile development and the Appcelerator product.
https://www.facebook.com/groups/25823523812/

The product page wasn't immediately very intuitive to me however it looks like the Titanium Studio product is a free solo development path.
http://www.appcelerator.com/plans-pricing/

After registering and an email confirmation the download and install was a reasonably small footprint.

Although had the 64-bit JDK installed on my Windows 8 laptop Titanium Studio 3.x would not proceed.

You will need the 32-bit JDK
http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

Which is noted here.
http://docs.appcelerator.com/titanium/latest/#!/guide/Prerequisites

After installing the side-by-side install of the 32-bit JDK there was no further setup necessary for Java which was a question for me as the error led me to believe I may need to add Java to my path! This link was helpful, so I didn't add Java to the Path, although I have a JAVA_HOME which I believe was for Eclipse?
http://stackoverflow.com/questions/10943763/using-64bit-and-32-bit-jdk

Node.JS was installed on my machine. Github was configured into the IDE.

http://docs.appcelerator.com/titanium/latest/#!/guide/Quick_Start-section-29004949_QuickStart-YourFirstMobileApp

Configure Native SDK
Android, Blackberry and Tizen are listed.

(What IS Tizen? - No Windows or Apple?)

A surprisingly nice dynamic validation occurred upon entering the path to the Android SDK that exists under the ADT Bundle with Android Eclipse.
http://developer.android.com/sdk/index.html

Now to update Android SDK, requirements are for level 10 which surprised me, Nook is on 15....

>>>Android configuration details.

One or more pieces are missing from the Android SDK. It may be that the Android SDK is already installed and Titanium Studio cannot locate the directory, or it may be that some additional components need to be installed.
Items required:
  • An Android SDK is missing. Titanium requires Android platform 2.3.*
  • Add-On addon.+google.+apis.+10
<<<

IOS looks available when following a number of steps, free to code against if not testing on a physical mac device.

Question now is if not persuing the iOS SDK here, what does Titanium studio potentially offer the Android developer?

Moving from the "Get Started" to the "Develop" tab I see that a Nook example is available.

Selecting a project, calling it "MyFirstTitaniumApp"
Running, using Android emulator, launching.
All very quick and easy so far.

So where is my app?
The quick start instructions suggest I should see a white screen with the words "Welcome to Titanium!", which I don't. Can I find this app on the phone?

On the emulator, trying menu, and a bunch of stuff, clicking menu again, and now I see it. I did run again if that made a difference?

While I barely know what I am doing in both of these environments, Titanium Studio does seem easier and faster than Android SDK, ADT Bundle. Will TS bring me a more advanced framework to build upon and one that makes it easy to publish iOS as well? Will it have the emulator capabilities that the ADT bundle has???