Wednesday, December 18, 2013

weiyue.net 网站建设和想法



... Build the a site
http://archsonsdesign.blogspot.com.au/2013/07/create-full-feature-web-site.html

基础结构设计
Load Balancer with NGINX
https://blog.serverdensity.com/how-to-configure-nginx-as-a-load-balancer/

系统设计
  • Log-Stash + Elastic-Search
  • 安全
  •  数据库,报表,大数据

后台界面API设计
  • NodeJS
前台设计
Angular + Entity Framework 6 + Web API

页面设计 - UI Design
  • Bootstrap
  • Html5 Boilerplate
  • Angular JS

Sunday, November 17, 2013

Great APIs



Map API
Google

Twilio - void, SMS, and more
http://www.twilio.com/sms/pricing

Payment API
Paypal

Social API

Facebook
Twitter
Giga

Thursday, November 14, 2013

.NET CMS



Sitecore, 
Umbraco, 
Orchard, 
Sitefinity
CrowdCMS, 
Kentico, 
DotNetNuke (DNN), 
N2

Free Tutorials
http://stackoverflow.com/questions/5602715/sitecore-tutorials
http://learnsitecore.cmsuniverse.net/en/GlobalNavigation/Sitecore-beginners-guide.aspx


dreamfarmer邀请您访问新足迹
http://www.oursteps.com.au/bbs/?fromuser=dreamfarmer


Tuesday, November 12, 2013

Thursday, November 7, 2013

Dev Ops


Dev Ops - Requirement
 
* Consult and advise clients and teams on Amazon Web Services 
* Lead and support the Solution Architect on the logical and physical infrastructure 
* Lead and mentor others in the use of infrastructure automation 
* Assist and work on setting up Continuous Integration 
* Help the Solution Architect choose the right solutions to aid in scalability & security 
* Continue to help push the edge of Continuous Delivery across all Scrum teams and with DevOps colleagues 
 
You must have: 
 
* 1-2+ years experience in a DevOps role or equivalent 
* Solid understanding of IP networking 
* Strong knowledge and experience with Linux (CentOS and Debian based) 
* Hands-on knowledge of automation on AWS with Puppet/Chef 
* Engineering background (focus on performance optimisation) 
 
Bonus criteria that will make you stand out: 
 
* Having written and executed load & stress tests 
* Previous work in an Agile company 
* Monitoring with Nagios/Icinga 
* Any Windows administration skills 
 

Sunday, November 3, 2013

SSRS


Dev setup

Visual Studio 2012 - How
http://gauravmahajan.net/2013/03/22/build-ssrs-reports-using-visual-studio-2012/



Tuesday, October 29, 2013

Cloud Stuff



Free hosting
http://www.windowsazure.com/en-us/develop/net/aspnet/?WT.mc_id=A5A71FF5F

AWS Services

EC2
S3
RDS
SNS
SQS


Monday, October 28, 2013

ASP.NET MVC



Best Practice

  • Put validation logic to "view model" instead of your business model - Link
  • Automapper improve productivity but slow, use with care
  • Entity Framework Patterns - Link1 Link2

Security tips for security (ref link )
  1. Anti-Forgery-Token (attribute) on the login page
  2. Slow all authentication attempts down by at least a second (makes brute force impractical)
  3. Implement an account lock out procedure on n amounts of invalid logons
  4. Always use a generic error message on your failed logins to prevent hackers knowing which part of a login is wrong
  5. Always encrypt your passwords in the db with a salt, the salt should be per user to prevent a rainbow attack on a stolen database
  6. Always make sure that any data displayed or retrieved is valid for that user
  7. Always use parameterised sql
  8. Try and obfuscate the ids passed around in your urls and views to prevent modification or an attempt at a direct reference attack
Components
  • Elmah
  • Glimpse
  • Ninject (https://github.com/ninject/ninject/wiki/_pages)
  • WebMatrix - SimpleMembershipProvider
  • WebActivator
  • OAuth
  • EntityFramework
  • Javascript Libs
    • JQuery UI
    • Kendo UI
    • http://www.nuget.org/packages/Google.DiffMatchPatch.Js/
    • Knockout
    • Backbone 
  • Bundle
Concepts
  • Routing
  • ViewModel
  • Validation
  • Model Binder
  • Bundle
  • Partial View
  • Child Action
  • Filter
  • View Engine
  • Controller Factory
  •  

Questions and Answers













Thursday, October 24, 2013

Some guys


Great developers
http://www.andyhawthorne.co.uk/about/


6 Steps

To learn a programming language or a technology, I can follow the 6 steps:

  1. Architecture
  2. Dev Environment Setup and Sample Projects
  3. Basic Features
  4. Advance Features
  5. Tools, Books, Videos
  6. Real world Projects (Learning by doing)
The 6 things or steps to become an effective developer.

Saturday, October 19, 2013

Job Interviews


Questions

All Technical Interviews
http://www.indiabix.com/technical/interview-questions-and-answers/
http://www.pcds.co.in/

Generic Programming Skills
  • Client side performance improvement
  • OOP and OOAD
  • CSS inline width and hight
  • ER diagram
  • UML diagram
  • Design API
  • Patterns

Project Related
  • Git - difference between pull and rebase




Generic Front-end
  • Mobile 300ms delay - Solution
  • HTTP Status Code
  • HTTP Methods

ASP.NET MVC
  1. MVC globalization, and differences with traditional ASP.NET
*JavaScript

Javascript OO Features
  • Backbone.js
  • Angular.js
  • Knockout.js

Database

Non-Technical Questions:
  • Talk about yourself.
  • What are things you don't like to be a front-end developer.
  • What's your weakness?
  • Why do you leave your company?

Job Sites and Resources
  • SEEK
  • CareerOne
 

DBA - MS SQL Server


Become The DBA
http://www.johnsansom.com/how-to-become-a-sql-server-dba/
http://www.idevelopment.info/

Database Documents
MySQL - http://dev.mysql.com/doc/index-topic.html
SQL Server - http://www.microsoft.com/en-us/sqlserver/default.aspx
Oracle Database - http://www.oracle.com/us/products/database/overview/index.html

DBA
http://www.mssqltips.com/sql-server-tip-category/53/dba-best-practices/
[SQL Job] http://www.mssqltips.com/sqlservertip/2561/querying-sql-server-agent-job-information/

Tutorials
http://www.studytonight.com/dbms/er-diagram.php
Locking -  Pessimistic and Optimistic locking in .NET
http://www.codeproject.com/Articles/114262/ways-of-doing-locking-in-NET-Pessimistic-and-opt

Sites
http://sqlfool.com
e.g. http://sqlfool.com/2011/06/index-defrag-script-v4-1/


All samples (sample database, project, etc..)
http://sqlserversamples.codeplex.com/

CLR and Aggregate function






Syntax
Union and Union All - Union All allows duplicates, but Union will remove duplicated rows.

Cluster and Non-Cluster Index

http://stackoverflow.com/questions/91688/what-are-the-differences-between-a-clustered-and-a-non-clustered-index
Clustered indexes are stored physically on the table. This means they are the fastest and you can only have one clustered index per table.
Non-clustered indexes are stored separately, and you can have as many as you want.
The best option is to set your clustered index on the most used unique column, usually the PK.

A clustered index is a special type of index that reorders the way records in the table are physically stored. Therefore, the table can have only one clustered index. The leaf nodes of a clustered index contain the data pages.
A non-clustered index is a special type of index in which the logical order of the index does not match the physical stored order of the rows on disk. The leaf node of a non-clustered index does not consist of the data pages. Instead, the leaf nodes contain index rows. (Read more here)

SQL Server Optimization
http://technet.microsoft.com/en-us/library/aa964133%28v=sql.90%29.aspx









Thursday, October 17, 2013

Asynchronous Functions c#


Asynchronous Functions

await Task.Delay (5000);

Site Performance and Scalability



REDIS
http://highscalability.com/blog/2014/9/8/how-twitter-uses-redis-to-scale-105tb-ram-39mm-qps-10000-ins.html

Still good to read:

Scale up and Scale out
http://www.codinghorror.com/blog/2009/06/scaling-up-vs-scaling-out-hidden-costs.html

Performance - Good Start:
http://stackoverflow.com/questions/2246251/how-to-improve-asp-net-mvc-application-performance

Integration Test
For web applications, the most common approach to integration testing is UI automation. This term
refers to simulating or automating a web browser to exercise the application’s entire technology stack by
reproducing the actions that a user would perform, such as clicking buttons, following links, and
submitting forms.
The following are the two best-known open source browser automation options for .NET
developers:
Selenium RC (http://seleniumhq.org/), which consists of a Java “server”
application that can send automation commands to Internet Explorer, Firefox,
Safari, or Opera, plus clients for .NET, Python, Ruby, and multiple others so that
you can write test scripts in the language of your choice. Selenium is powerful and
mature; its only drawback is that you have to run its Java server.
WatiN (http://watin.sourceforge.net/), a .NET library that can send automation
commands to Internet Explorer or Firefox. Its API isn’t as powerful as Selenium,
but it comfortably handles most common scenarios and is easy to set up (you
need to reference only a single dynamic-link library).

View
In the view, you can access WebPageRenderingBase directly, e.g. get user name - @User.Identity.Name

Server Debugging Tools
  • Dumpchk - check dump
  • winDbg - hang or crash
  • vmMap - memory leaking
  • Fuslogvm - assembly binding (Link)
















Wednesday, October 16, 2013

Visual Studio - The Best IDE for .NET



Plugin
  • Resharper
Extension

Analyze
  • Profiling
  • Load Testing 
NuGet
Template
Team Foundation
MSBuild


Increase VS Memory:
http://old.stevenharman.net/blog/archive/2008/04/29/hacking-visual-studio-to-use-more-than-2gigabytes-of-memory.aspx
 

Tuesday, October 15, 2013

Learn Javascript


Resources
https://developer.mozilla.org/en-US/docs/Web/JavaScript

JQuery
http://jqfundamentals.com/

OOP
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript

AngularJS Tutorial
Documentation http://docs.angularjs.org/guide/concepts
http://www.thinkster.io/pick/eHPCs7s87O/angularjs-tutorial-learn-to-rapidly-build-real-time-web-apps-with-firebase


Breeze
http://www.breezejs.com/samples/todo

Javascript Libraries

Nice ideas and sites




Mail Chimp - http://mailchimp.com/about/
Campaign Monitor - http://www.campaignmonitor.com/
10 Web Sites http://www.sitepoint.com/10-websites-creative-moving-elements/

Great Web Designer Works
http://www.denisechandler.com/portfolio.html
http://www.designcrowd.com.au/


Kids
http://www.sillypoems.info/

Business
http://www.rbc.com.au/
http://www.imobileaccessories.com.au/index.php [looks comfortable]
http://www.snorgtees.com/t-shirts [T-Shirts]


Stores
http://www.luhsetea.com/
http://www.49thparallelroasters.com/
http://cupcakesandcola.com.au/

中国长城汽车 Sydney Great Wall Car SUV
http://www.greatwallmotors.com.au

中国奇瑞瑞虎汽车 Sydney Chery J11 SUV
http://www.cherymotors.com.au

Just Architecture




Soft skills
  • Communication
  • Presentation 
  • Leadership 
  • PM - Agile, Scrum 
Reading and Listening


Tech skills




Tools

UltraEdit 


Server Debugging
  • Dumpchk - check dump
  • winDbg - hang or crash
  • vmMap - memory leaking
  • Fuslogvm - assembly binding (Link)


CSS



LESS
http://www.lesscss.org/

Bootstrap
http://getbootstrap.com/getting-started/

Foundation
http://foundation.zurb.com/

Design a system


You need a plan.
You need some patterns.

Patterns

Web Hooks
http://apidocs.mailchimp.com/webhooks/
http://code.msdn.microsoft.com/site/search?f[0].Type=User&f[0].Value=Srigopal%20Chitrapu


CQRS - Command and Query Responsibility Segregation
http://msdn.microsoft.com/en-us/library/jj591573.aspx

Design Patterns in .NET Framework
http://msdn.microsoft.com/en-us/magazine/cc188707.aspx

Javascript Libs


Here are the things you need to know and learn.
Also have a look - http://en.wikipedia.org/wiki/List_of_JavaScript_libraries

Framework
  • JQuery
  • JQuery Mobile
  • Node.js
  • Ember.js

Pattern
  • Knockout.js
  • Backbone.js
  • Underscore.js
  • Angular.js
  • Socket.IO

Unit Test
  • QUnit.js
  • Jasmine.js and Jasmin-jquery.js

Debug
  • JHint.js

Function


Sunday, October 13, 2013

Dev Links and Tools


Dump stuff here and edit them later.

Network
IoMeter

Shortcut 
http://www.shortcutworld.com/en/win/Eclipse.html

Storage
Baidu Cloud (2T free) - pan.baidu.com

Editor
Note++
UltraEdit
Vi and Vim

IDE
Visual Studio
RubyMine
PHPStorm
InteliJ - For JAVA and Android
Eclipse - For JAVA and Android

Quick Dev Tools:
LINQPad

Windows Tools:
WireShark
LockHunter
Slickrun

Presentation
Prezi - http://prezi.com/

Books
Free ebooks (>1000 books) https://github.com/vhf/free-programming-books

Tutorials
W3School - http://www.w3schools.com/

Windows Tools

Create PDF for free - Bullzip (do not check "Print to file")