Admin interfaces

There are some admin panels let you quickly deploy a backend management/dashboard tools.

AdminLTE

AdminLTE is Admin control Panel Theme That Is Based On Bootstrap 3.x, only with client side.

Keen IO

(http://keen.github.io/dashboards/)

freeboard

Freeboard

Bootstrap-Admin-Template

Bootstrap-Admin-Template

###startbootstrap-sb-admin-2

sb admin2

Django Admin

This is the killer feature for django framework.

Django xadmin

django-xadmin Drop-in replacement of Django admin comes with lots of goodies, fully extensible with

plugin support, pretty UI based on Twitter Bootstrap.

Django Admin Bootstrap

django-admin-bootstrap A Django admin theme using Twitter Bootstrap.

It doesn’t need any kind of modification on your side, just add it to the installed apps.

Django Admin2

Django Admin2 Extendable, adaptable rewrite of django.contrib.admin.

Flask Admin

flask admin Simple and extensible administrative interface framework for Flask.

ng-admin

ng-admin is an AngularJS admin GUI to any RESTful API. It only depends on your REST API, it does not

care which database are used now.

rdash-angular

rdash-angular is another AngularJS implementation of the RDash admin dashboard theme.

mongo-express

mongo-express Web-based MongoDB admin interface, written with Node.js and express.

charisma

charisma Free, responsive, multiple skin admin template

KeystoneJS

KeystoneJS is a famous CMS with Node.JS with admin panel written with ReactJS.

Http server for development

HTTP Server for local development

Python Web Server

If you installed Python, then you can start a simple HTTP server:

python -m SimpleHTTPServer 8080

nginx

Support both linux and windows now

Apache

Node http server

npm install -g http-server

caddy

caddy is a cross-platform HTTP Server written with Go

nanohttpd

nanohttpd is an embedded HTTP Server for Java.

Tomcat

Jetty

The above two both support embed usage.

Of course you could use IIS for free on Windows.

Reference

nginx

Android development resources

Android Development Resources

The concept you need to know for Android beginners

  • AVD(Android Virtual Device)

  • SDK Manager

  • Context

Core Android Application Components

  • Activity: The “C” of MVC, interact with layout

  • BroadcastReceiver

  • Service

  • ContentProvider

UI Components

  • View: UI Widgets

  • Layout Manager(ViewGroup): container of View

  • Fragment

Android Manifest

  • AndroidManifest.xml

  • Permissions

Andorid default does not allow network access, you need to add these lines to manifest:




Resources

  • Resource IDs and R.java

Intent

Intent is a powerful concept within the Android universe. An intent is a message that can be thought of as a request that is given to either an

activity within your own app, an external application, or a built-in Android service.

Think of an intent as a way for an Activity to communicate with the outside Android world. A few key tasks that an intent might be used for within

your apps:

  • Take the user to another screen (activity) within your application

  • Take the user to a particular URL within the Android web browser

  • Take the user to the camera to have them take a picture

  • Initiate a call for the user to a given number

Action Bar

The ActionBar is a consistent navigation element that is standard throughout modern Android applications. The ActionBar can consist of:

  • An application icon

  • An application or activity-specific title

  • Primary action buttons for an activity

  • Consistent navigation (including tabbed UI)

You need to define action buttons in /res/menu XML.

ToolBar

ToolBar was introduced in Android Lollipop, API 21 release and is a complete replacement to ActionBar.It’s a ViewGroup so you can place it

anywhere in your layout. ToolBar also provides greater control to customize its appearance for the same reason.

The things you cannot do in UI thread

  • Opening a Socket connection (i.e. new Socket()).

  • HTTP requests (i.e. HTTPClient and HTTPUrlConnection).

  • Attempting to connect to a remote MySQL database.

  • Downloading a file (i.e. Downloader.downloadFile()).

When you debug Android APP on real device, you need first enable “USB Debug” on device. Then install USB driver on PC.

When you run APP directly on Mi 3C, you need first make sure your device turn on USB debug mode.

You just need to “Run” in Android Studio, and select the real device.

Reference

Android Official Toturial Chinese

Android Toturil

Coursera Android

CodePath

Android Open Project

Android UI

Android Bootstrap

Awesome Android

MPAndroidChart

Gradle

Android Best Practice

NetworkOnMainThreadException

Retrofit

Pandas for data analysis

Pandas is the most popular data analysis tool for Python, which is based on Numpy.

The basic concept of pandas are Series and DateFrame.

Series are an array of data, associated with array of data labels:

obj = Series([1,3,5,100],index=[‘a’,’b,’c’,d’])

obj.values

obj[‘a’]

‘b’ in obj #like ordered dict

Also you could pass dict to Series:

person = {‘name’: ‘simon’,’age’:30}

obj2 = Series(person)

DataFrame represents a tabular data, it has both row and column index, it can be thought as a dict of Series.

It internally stores data as a two-dimension format.

The most common usage about DataFrame is from a dict of lists with equal length or Numpy arrys:

data = {‘name’:[‘simon’,’grace’],’age’:[36,33]}

df = DataFrame(data)

or df = DataFrame(data, columns=[‘name’,’age’])

or df = DataFrame(data, columns=[‘name’,’age’],index=[‘one’,’two’])

df.columns

You can access column of data with dict style or by attribute:

df[‘name’]

df.age

Row can be accessed like:

df.ix(‘one’) #by indexing field

df.values

Reference

  • Python for Data Analysis

Yeoman start

Yeoman is a great scaffolding tool for web development.

But it will take you some time to start on Windows:

  1. Install node.js

  2. Install ruby if you need Compass support

  3. Install bower and grunt

npm install -g yo bower grunt-cli

  1. Install generator for Karma and Angular project

npm install -g generator-karma generator-angular

  1. Run as administrator tp generate scaffolding project for AngularJS

mkdir hello cd hello yo angular

  1. start project

grunt serve

If you encounter error about bower packages:

Running “wiredep:app” (wiredep) task Warning: Error: Cannot find where you keep your Bower packages. Use –force to continue. Aborted due to warnings.

you need to install packages manually:

bower install