Spending time this evening researching various Go Web Frameworks.
http://www.gorillatoolkit.org/
http://martini.codegangsta.io/ *(on 11/30/2015 the site was not loading)
http://revel.github.io/
2015-11-30
2015-11-29
2015-11-29 Sunday - What's New in PostgreSQL 9.5
Spent some time today reviewing the upcoming 9.5 release documentation...
https://wiki.postgresql.org/wiki/What's_new_in_PostgreSQL_9.5
https://wiki.postgresql.org/wiki/What's_new_in_PostgreSQL_9.5
2015-11-27
2015-11-27 Friday - Book: Universal Methods of Design
Picked-up an excellent book this afternoon at the local Bellevue library:
Universal Methods of Design, 100 Ways to Research Complex Problems, Develop Innovative Ideas, and Design Effective Solutions - by Bella Martin and Bruce Hanington
http://www.amazon.com/Universal-Methods-Design-Innovative-Effective/dp/1592537561
http://www.amazon.com/Universal-Methods-Design-Innovative-Effective/dp/1592537561
2015-11-27 Friday - Jason Baldridge, PhD, Scala tutorials
Today I'm spending some time exploring this...
Jason Baldridge, Associate Professor in the Department of Linguistics at the University of Texas at Austin.,
F11 Introduction to Computational Linguistics (with Scala)
http://icl-f11.utcompling.com/links
Jason Baldridge, Associate Professor in the Department of Linguistics at the University of Texas at Austin.,
F11 Introduction to Computational Linguistics (with Scala)
http://icl-f11.utcompling.com/links
2015-11-27 Friday - Go Conferences
This is a placeholder posting for Go Language Conferences...
Next year, The European Go Conference will be Oct 16th in Paris, at the Théâtre de Paris, 15, Rue Blanche http://2016.dotgo.eu/
GopherCon
https://gophercon.com/
(was held in July in 2015 - in Denver, Colorado)
Next year, The European Go Conference will be Oct 16th in Paris, at the Théâtre de Paris, 15, Rue Blanche http://2016.dotgo.eu/
GopherCon
https://gophercon.com/
(was held in July in 2015 - in Denver, Colorado)
2015-11-22
2015-11-22 Sunday - Elasticsearch 2.0.0 GAA released on Oct 28th
There are some notable new features...
https://www.elastic.co/blog/elasticsearch-2-0-0-released
https://dzone.com/articles/elasticsearch-101
https://www.elastic.co/blog/elasticsearch-2-0-0-released
https://dzone.com/articles/elasticsearch-101
2015-11-22 Sunday - CentOS 7 Setup
I'm experimenting with setting-up a minimal CentOS 7 environment (within Oracle VirtualBox) on a Windows 7 laptop...this posting is a placeholder of information that others may find useful.
Goals:
1) Install VirtualBox (I'm using the current 5.0.10 release)
2) Download CentOS (I'm using version 7)
3) Create Your CentOS virtual machine
5) Modify Network Interface Config Files
7) Install some networking tools...
8) Enable Outside Access (e.g. from the Windows 7 machine that is running VirtualBox)
12) Python install
13) Git install
14) Connecting to a CentOS virtual machine with Eclipse
15) Install Apache Web Server (http)
Goals:
- 'Sharpen the saw' with regards to my hands-on skills to configure and maintain a Linux virtual machine.
- Create a pre-configured, reusable image, that I can use for future client engagements - and in preparation for some new product development I have planned for 2016.
- As a foundation master/controller for experimenting with Ansible and Docker.
1) Install VirtualBox (I'm using the current 5.0.10 release)
2) Download CentOS (I'm using version 7)
3) Create Your CentOS virtual machine
- For this experiment, I chose: CentOS-7-x86_64-Minimal-1503-01.iso
4) Update your packages
- >yum update
5) Modify Network Interface Config Files
- Locate the appropriate files in the /etc/sysconfig/network-scripts/ directory
- For my particular installation environment, this happened to be ifcfg-enp0s03
- Modify the following entries in the file to have these values:
- ONBOOT=yes
- BOOTPROTO=dhcp
- Restart network service
- >sudo systemctl restart network
- Verify that you have network access
- >ping -c 5 google.com
6) Configure NTP Synchronization
- Check your current system time configuration
- >sudo timedatectl
- Set your desired timezone, for example:
- >sudo timedatectl set-timezone America/Los_Angeles
- Install ntp
- >sudo yum install ntp
- Start and Enable the ntp service
- >sudo systemctl start ntpd
- >sudo systemctl enable ntpd
7) Install some networking tools...
- >sudo yum install net-tools
- >sudo yum install nmap
8) Enable Outside Access (e.g. from the Windows 7 machine that is running VirtualBox)
- To be able to access the CentOS virtual machine from the outside, you'll need to setup an and additional Network "Host-only Adapter"
9) Ansible install
- {TODO}
10) Java install
11) Go install
- These links explain how to install the official Oracle release...
- http://www.oracle.com/technetwork/java/javase/downloads/index.html
- http://tecadmin.net/install-java-8-on-centos-rhel-and-fedora/#
- For my current experimentation, I will try the following:
- >sudo yum install java-1.8.0-openjdk-devel.x86_64
- >sudo yum install golang
- currently appears to install v1.4
- {TODO}
- >sudo yum install git.x86_64
14) Connecting to a CentOS virtual machine with Eclipse
- Eclipse Mars RSE User Guide
- http://www.eclipse.org/tm/
- http://marketplace.eclipse.org/content/tm-terminal
- http://www.eclipse.org/tcf/
15) Install Apache Web Server (http)
- >sudo yum install htttpd
- >sudo service start httpd
- >sudo chkconfig httpd on
16) Enable Outside Access to Apache Web Server
- Configure firewall
- >sudo firewall-cmd --permanent --zone=public --add-service=http
- >sudo firewall-cmd --permanent --zone=public --add-service=https
- >sudo firewall-cmd --reload
- Configure iptables
- >sudo iptables -I INPUT -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT
- To persist the changes, go to /etc/sysconfig/ - and add the following line to iptables
- "-A INPUT -i eth1 -p tcp -m tcp --dport 80 -j ACCEPT"
- >sudo service iptables restart
- >sudo service httpd restart
- https://www.centos.org/docs/5/html/5.1/Deployment_Guide/index.html
- https://www.centos.org/forums/index.php
- https://www.digitalocean.com/community/tutorials/initial-server-setup-with-centos-7
- https://www.digitalocean.com/community/tutorials/additional-recommended-steps-for-new-centos-7-servers
- https://www.digitalocean.com/community/tutorials/how-to-install-linux-apache-mysql-php-lamp-stack-on-centos-6
- http://cyruslab.net/2014/07/11/installing-netstat-on-centos-7-minimal-installation/
- http://superuser.com/questions/696782/vm-running-centos-can-ping-but-cant-access-web-server
- http://stackoverflow.com/questions/27003677/accessing-a-centos-7-minimal-server-running-on-virtualbox-from-outside
- https://forums.virtualbox.org/
- http://stackoverflow.com/questions/27003677/accessing-a-centos-7-minimal-server-running-on-virtualbox-from-outside
- http://www.krizna.com/
You may also want to consider ordering a digital copy of this book:
2015-11-18
2015-11-18 Wednesday - QConSF 2015 Trip Report
My Takeaway, as cited on the QConSF 2015 site:
The venue at the Hyatt Regency was excellent
I met some very interesting people on this trip - from many different countries - including: Italy, Australia, Belarus, Romania, India, England, Russia, Lebanon, and China.
I arrived on Sunday - and was able to meet up with three fellow attendees for drinks and dinner at The Chaya - an excellent Asian/Japanese Fusion style restaurant.
I will touch on just some of the more noteworthy sessions I attended this week...to give you a flavor of the content that might appeal to someone likewise interested in the distributed architecture problem space.
Bill Buxton (Principal Researcher at Microsoft) gave an interesting talk on Monday morning's keynote: Avoiding The Big Crash.
I intended to attend as many of the sessions in the Architectures You've Always Wondered About track on Monday - but found myself often stepping out so as not to miss some very interesting sessions I note below.
My favorite session of the entire conference was given by Zhuoran Zhuang and Zhao Xu, who gave a phenomenally detailed presentation entitled Alibaba Mobile Infrastructure at "China Scale"
I also enjoyed the talk given by Erran Berger (Senior Director of Engineering at LinkedIn) LinkedIn's Active/Active Evolution
My keen interest in the Go Language sessions led me to frequently drop in on in the Modern Languages in Practice track
For example:
On Tuesday, I spent time in the Containers in Practice track, and found these three sessions to be very notable:
I also managed to include a talk given by Fangjin Yang's (co-founder of @Imply) Architecting Distributed Databases for Failure - in the Architecting for Failure track
On Wednesday, I particularly enjoyed the talk given by Jason Brown (an Apache Cassandra Core Committer) Hell is...other nodes - in the Taming Distributed Architectures track.
Making the time to step away from day-to-day responsibilities is never easy. But the investment I have made in making the commitment to attend QConSF has paid off in so many ways: Ideas, insights, specific case studies that can be cited, bread crumbs of knowledge that give me the beginning of the trail to discovery, industry connections...and yes, not to be forgotten or marginalized...a renewed sense of enthusiasm for my profession.
Some additional links I picked-up from some twitter activity that may be of interest to others:
Brendan Gregg's Linux Performance page
www.brendangregg.com/linuxperf.html
So We Hear You Like Papers talk by Ines Sombra - Distributed Systems Engineer at @Fastly, and Caitie McCaffrey - Tech Lead of Observability at Twitter
https://github.com/Randommood/QConSF2015
"The confluence of diverse backgrounds, technologies, and business segments represented by a global breadth of attendees - merges into a synthesis of pure enthusiasm that provides one-and- all an opportunity to pause in our day-to-day professional challenges, and lift our heads up for a moment and embrace the realization that there are people doing extraordinary things in our industry - and as their knowledge is willingly shared - new plateaus of achievement are now within our own grasp."Tonight I returned from my 4th http://qconsf.com - and have much to share.
The venue at the Hyatt Regency was excellent
I met some very interesting people on this trip - from many different countries - including: Italy, Australia, Belarus, Romania, India, England, Russia, Lebanon, and China.
I arrived on Sunday - and was able to meet up with three fellow attendees for drinks and dinner at The Chaya - an excellent Asian/Japanese Fusion style restaurant.
I will touch on just some of the more noteworthy sessions I attended this week...to give you a flavor of the content that might appeal to someone likewise interested in the distributed architecture problem space.
Bill Buxton (Principal Researcher at Microsoft) gave an interesting talk on Monday morning's keynote: Avoiding The Big Crash.
I intended to attend as many of the sessions in the Architectures You've Always Wondered About track on Monday - but found myself often stepping out so as not to miss some very interesting sessions I note below.
My favorite session of the entire conference was given by Zhuoran Zhuang and Zhao Xu, who gave a phenomenally detailed presentation entitled Alibaba Mobile Infrastructure at "China Scale"
I also enjoyed the talk given by Erran Berger (Senior Director of Engineering at LinkedIn) LinkedIn's Active/Active Evolution
My keen interest in the Go Language sessions led me to frequently drop in on in the Modern Languages in Practice track
For example:
- Rick Hudson (Engineer at Google) did a session on Go GC: Prioritizing Low Latency and Simplicity. Surprisingly there is only one 'knob' to turn with regards to Go GC. Rick hinted at some changes that are coming in Go 1.6 - which I need to research more.
- Paul Dix (CEO at InfluxDB) gave an interesting talk on Experiences building InfluxDB in Go. If my memory is correct, I believe he stated that there is only 68K lines of Go code comprising the InfluxDB product.
- Travid Reeder (CTO and co-founder of Iron.io) gave a good talk on Beyond the Hype: 4 years of Go in Production
On Tuesday, I spent time in the Containers in Practice track, and found these three sessions to be very notable:
- Inside Yelp's SOA Infrastructure - Kyle Anderson (SRE and Sysadmin at Yelp), which I found to be of keen interest due to their selection of AirBnB's SmartStack for Cloud Service Discovery
- Beyond Ad-Hoc Automation: To Structured Platforms - given by Brdget Kromhout (Principal Technologist for Cloud Foundry at Pivotal)
- Containers at Netflix - An Evolving Story - given by Sangeeta Narayanan (Leads Edge Infrastructure & Delivery Team at Netflix)
I also managed to include a talk given by Fangjin Yang's (co-founder of @Imply) Architecting Distributed Databases for Failure - in the Architecting for Failure track
On Wednesday, I particularly enjoyed the talk given by Jason Brown (an Apache Cassandra Core Committer) Hell is...other nodes - in the Taming Distributed Architectures track.
Making the time to step away from day-to-day responsibilities is never easy. But the investment I have made in making the commitment to attend QConSF has paid off in so many ways: Ideas, insights, specific case studies that can be cited, bread crumbs of knowledge that give me the beginning of the trail to discovery, industry connections...and yes, not to be forgotten or marginalized...a renewed sense of enthusiasm for my profession.
Some additional links I picked-up from some twitter activity that may be of interest to others:
Brendan Gregg's Linux Performance page
www.brendangregg.com/linuxperf.html
So We Hear You Like Papers talk by Ines Sombra - Distributed Systems Engineer at @Fastly, and Caitie McCaffrey - Tech Lead of Observability at Twitter
https://github.com/Randommood/QConSF2015
2015-11-14
2015-11-14 Saturday - Reading Source Code: Google's TensorFlow
TensorFlow is an Open Source Software Library for Machine Intelligence
I'm spending some time this weekend reading through the source code for Google's TensorFlow
https://github.com/tensorflow/tensorflow
http://www.tensorflow.org/
Some recent news stories about TensorFlow
I'm spending some time this weekend reading through the source code for Google's TensorFlow
https://github.com/tensorflow/tensorflow
http://www.tensorflow.org/
"TensorFlow™ is an open source software library for numerical computation using data flow graphs. Nodes in the graph represent mathematical operations, while the graph edges represent the multidimensional data arrays (tensors) communicated between them. The flexible architecture allows you to deploy computation to one or more CPUs or GPUs in a desktop, server, or mobile device with a single API. TensorFlow was originally developed by researchers and engineers working on the Google Brain Team within Google's Machine Intelligence research organization for the purposes of conducting machine learning and deep neural networks research, but the system is general enough to be applicable in a wide variety of other domains as well."
Some recent news stories about TensorFlow
- http://www.wired.com/2015/11/google-open-sources-its-artificial-intelligence-engine/
- http://phys.org/news/2015-11-google-tensorflow-game-changer-future-ai.html
- http://www.businessinsider.com/tensorflow-is-googles-new-ai-software-2015-11
- http://www.bizjournals.com/sanjose/news/2015/11/10/google-will-open-source-artificial-intelligence.html
- http://fortune.com/2015/11/09/google-artificial-intelligence/
- http://recode.net/2015/11/09/google-tries-an-android-for-machine-learning-releasing-open-source-ai-system/
- Jason Baldridge's Simple end-to-end TensorFlow examples
- By Illia Polosukhin
2015-11-14 Saturday - MariaDB 10.1.8
If you are running MySQL - here's a compelling reason to switch to MariaDB 10.1.8 -
https://mariadb.com/kb/en/mariadb/data-at-rest-encryption/
...support for table, tablespace, temporary files, temporary tables, and binary logs encryption for Data At Rest - "with an overhead of roughly 3-5%."
MariaDB 10.1 can do 1 million queries per second
https://blog.mariadb.org/10-1-mio-qps/
MariaDB 10.1 and MySQL 5.7 performance on commodity hardware
https://blog.mariadb.org/maria-10-1-mysql-5-7-commodity-hardware/
https://mariadb.com/kb/en/mariadb/data-at-rest-encryption/
...support for table, tablespace, temporary files, temporary tables, and binary logs encryption for Data At Rest - "with an overhead of roughly 3-5%."
MariaDB 10.1 can do 1 million queries per second
https://blog.mariadb.org/10-1-mio-qps/
MariaDB 10.1 and MySQL 5.7 performance on commodity hardware
https://blog.mariadb.org/maria-10-1-mysql-5-7-commodity-hardware/
2015-11-09
2015-11-09 Monday - One Week until QCon San Francisco
In one week I will be in San Francisco, attending QCon (the international software development conference - that has a strong architecture theme)
https://qconsf.com/
https://qconsf.com/
2015-11-09 Monday - Saltstack
I've recently had a team experimenting with Ansible - but have also been curious to better understand the possible benefits of Saltstack. This posting is a placeholder for notes and links to resources that may be of interest to others.
https://www.digitalocean.com/community/tutorials/an-introduction-to-saltstack-terminology-and-concepts
2015-11-07
2015-10-07 Saturday - HTML/JavaScript-based Presentation Tools
A placeholder of some presentation tool resources I would like to evaluate...
https://github.com/impress/impress.js
http://lab.hakim.se/reveal-js/#/
http://imakewebthings.com/deck.js/
http://markdalgleish.com/projects/fathom/
http://flowtime-js.marcolago.com/
https://gist.github.com/vasilisvg/1611562
http://codecall.net/2014/02/07/best-javascript-html5-presentation-frameworks/
https://github.com/impress/impress.js
http://lab.hakim.se/reveal-js/#/
http://imakewebthings.com/deck.js/
http://markdalgleish.com/projects/fathom/
http://flowtime-js.marcolago.com/
https://gist.github.com/vasilisvg/1611562
http://codecall.net/2014/02/07/best-javascript-html5-presentation-frameworks/
2015-11-01
2015-11-01 Sunday - CDN Best Practices
This posting is a placeholder for resources I find interesting - related to CDN Best Practices - that may be useful to to others...
https://en.wikipedia.org/wiki/Content_delivery_network
I'm currently evaluating Amazon's AWS CloudFront as a possible CDN solution
http://aws.amazon.com/cloudfront/
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/APIReference/CreateDistribution.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html
http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront
https://azure.microsoft.com/en-us/documentation/articles/best-practices-cdn/
A lists of CDN Vendors...
http://blog.streamingmedia.com/2014/07/cdnvendors.html
Heroku's Fastly
https://devcenter.heroku.com/articles/fastly
Marrying CDNs with front-end optimization
http://www.webperformancetoday.com/2012/05/14/cdn-feo-front-end-optimization-web-acceleration/
https://en.wikipedia.org/wiki/Content_delivery_network
I'm currently evaluating Amazon's AWS CloudFront as a possible CDN solution
http://aws.amazon.com/cloudfront/
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/DownloadDistS3AndCustomOrigins.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-creating-console.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/APIReference/CreateDistribution.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web.html
http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html
http://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html#limits_cloudfront
S3 limitation on creating directory structures for serving CDN content
see Phil P's last response - Apr 24, 2013 11:56pm
- this invalidated an assumption I had of using a CDN release directory
structure with S3 - but seems to state that it could be done with an
EC2 instance as a custom origin.
I also noted this entry, re: Invalidation of paths is not (?) supported with wildcards...
A question I've raised on the AWS CloudFront forums
"Versioning and cache-control You must consider how you will update static content and deploy new versions. The CDN does not currently provide a mechanism for flushing content so that new versions are available. This is a similar challenge to managing client side caching, such as in a web browser."
"Testing It can be difficult to perform local testing of your CDN settings when developing and testing an application locally or in staging."
"You cannot set up a CDN endpoint for an application deployed in Azure staging, or in the local Azure emulator in Visual Studio. This will affect unit testing, functional testing, and final pre-deployment testing. You must allow for this by implementing an alternative mechanism. For example, you could pre-deploy the content to the CDN using a temporary custom application or utility, and perform testing during the period it is cached. Alternatively, use compile directives or global constants to control where the application loads the resources from. For example, when running in debug mode it could load resources such as client-side script bundles and other content from a local folder, and use the CDN when running in release mode."
http://blog.streamingmedia.com/2014/07/cdnvendors.html
Heroku's Fastly
https://devcenter.heroku.com/articles/fastly
Marrying CDNs with front-end optimization
http://www.webperformancetoday.com/2012/05/14/cdn-feo-front-end-optimization-web-acceleration/
Subscribe to:
Posts (Atom)
Copyright
© 2001-2021 International Technology Ventures, Inc., All Rights Reserved.