Triangle Javascript 2013-07-30 AngularJS and Yeoman

Live tweeting the AngularJS/Yeoman presentation at TriangleJS meeting.  Kyle Buchanan presenting.

  • HTML as your teplate language (can be extended)Two-way data binding between views and models
  • Encourages structure and testing
  • Dependency Injection
  • Templates are a big part of the efficiency.

Kyle showing some code, explaining the $scope. ng-repeat example.

The ng- thingies are called directives.

Now talking about 2-way data binding.

Showing ng-model. There are many ng-<something>. Check out the documentation.

Creating a Service- Angular creates a singleton when it injects a service. They call it a service, but the method is called .factory

app.factory(‘NowPlayingSvc’, [function() {

return {

libraries: [








  • AngularJS Documentation
  • AngularJS eBook
  • AngularJS on Google+

Look for preso on the TriangleJS github account.


A workflow tools Yo, Grunt, and Bower.

To scaffolds out a new application. Grunt builds, etc. Bower is used for dependency management.

You need node.js, git and optionally Ruby and Compass if you plan to run compass

Working with Yeoman and AngularJS

This Yeoman looks great. I guess I’ll need an Apple to run this stuff.


Triangle Javascript meetup 2013-07-30 on AngularJS and Yeoman

Four issues

HTML as your teplate lang

2-way data binding between viewa and odels

encourages structure and testing

dependency injection

ng-app – can be applied to any part of a document, multiple ng-apps can exist on the same page.

You can have more than one ng-app on a page. They can be attached to any part like a div.

Categories: Uncategorized Tags:

Function Pink 2013-07-11 Meeting Notes

I’ll be live blogging the Function Pink meetup tonight. Les has got someone who is doing it through a Google+ Hangout.

There were a number of job announcements before the show. If you are a front-end developer in the RTP area, you have a number of choices for jobs.

Les announces Nick from CodeSchool over G+Hangout. He is talking about CSS Performance.

“Can we get parallax sccrolling?”

Nick is providing links to resources that Les will post later. I’ll put the link here when I get it. Got it.

Nick is from Orlando. Front-end developer has gained traction over the past few years.

We get a code for a special deal on CodeSchool tonight. Woot!

When you have multiple developers working on CSS, you need some way to control that development.

Large projects need some sort of modularity and style guides. They have four FE devs with an unwritten expectation of picking up at least one new thing when they are working on a large project.

Chris Zacharis from YouTube. Case study: redo YouTube page in 100k. He was surprised

We already deal with: Image optimizing, responsive content images, and combining requests.

Can do -> Should do. Optimize the code.

Measuring performance. He ran the inspector on Ruby Heroes. It showed all the selectors and he noted the way he looks at the different selectors and the performance and sizes of each.

It usually is not a concern. Using relative sizes. You shouldn’t have more than 3 or 4

GitHub CSS Performance video on Vimeo.

Painting: rasterizing the page for viewing. Ex. a cursor like on the Google home page in the field.

Continuous Repaint Demo. Using Canary. 32ms is okay. He is using Chrome tools to show the performance.

Repainting: Paint Rectangles Demo:

(currently expensive) Box shadow, border radius, filters, image resizing. These things change though.

Demo: SVG Sprites. Just because you can do it well in CSS, some browsers will render it differently.

Transitions & Animations: what effects do frame rates have on engagement. 30frames per second is about the limit.

to move something around you are causing the browser to repaint. Is there a better way using composite layers?

Triggering a new layer

3D/perspective transform

Animate opacity  or transform

CSS filters

composited childrend or overlaping

Intentionally Layering

Check out the Chrome tools Settings. He is selecting things to work with the performance.

Jank: (?) word that Google has given for bad CSS performance.

He set up a recorder through the tools to show the process using the chrome tools.

In the example he showed how to observe an image resize as a culprit in lower performance.

(using janky as a word is sort of weird.)

Revisiting SVG Sprites.

Reflow (another source for concern.

Triggering Reflow: Inline styles, class swapping changing fonts, window resizing, DOM manipulation, more.

Keeping Track: hard on a large size. Chrome has a about:tracing

In Chrome: new tab then add about:tracing to record page events. Works in Canary, maybe not older Chromes.

(I’m not sure about this, but it looks really neat.)

New To-Do: right next to accessibility and cross-browsering.

SVG is solved in some browsers but not others.


This is neat for Chrome, but what about FireFox or IE? The others aren’t there yet, but they may catch up. Do it right in Chrome and hope that it is right for the others. Mobile is another thing to think about.

Oooo, a dig at ColdFusion from the crowd. I’m not sure what that has to do with front-end development, but I may not be able to ask what they mean. It probably has to do with it not being open-source after talking with some people. Adobe is an easy target. It is surprising that ColdFusion has a poor reputation though with the younger people. I doubt they have used it and are just parroting what others are saying. It is a lesson to all of us that dissing another person’s technology never looks good to a casual observer. We all need to learn that once in a while.

Categories: Meeting Notes

TriLUG 2013-06-13 Meeting Cathy Davidson on MOOCs

June 13, 2013 1 comment

I attended the June 13th 2013 Triangle Linux User Group meeting held at NC State University’s Centennial Campus at Engineering II Building. The speaker for the meeting was Cathy Davidson of Duke University. This blog is a stream of consciousness / notes from the meeting.

2013-06-13 19.59.43

Justis Peters made announcements about all the great upcoming events. Lightning Talks coming soon Jul 11 or Sep 12. Have a Job/Want a Job was fairly active. Barry Peddycord (new PR officer) introduces Cathy Davidson from Duke University. She is the first member of the Mozilla board who is an educator. Working with McArthur Foundation and HASTAC foundation. How to recognize skills that are not specifically learned from academia. Badging as credentialing. (some schools will accept badging as prerequisites, but it is very new.)

Multiple choice tests were invented due to a teacher shortage in 1914. 1925 Scholastic testing would do multiple choice tests. Can badging supplement credentialing. Alternative forms of learning outside the classroom. Education was invented in a assembly line way.

Wrote a book what happened when steam powered presses made cheap books for common people. Talked about the first American Novel after the revolution being published along with the constitution. William Wells Brown wrote this novel in opposition to the US Constitution since it included slavery and didn’t include women. She was surprised to see a plaque on campus at UNC-CH saying that Brown had been part of starting UNC-CH after getting thrown out of Massachusetts and disappearing. Once the Internet came along, it would have the same distractions as the books were accused of in the first print revolution. Female Land Pirates(?).

Pockets were invented to hide books in their clothes. The idea was that the same control about knowledge from the revolutionary period with books is the same as people now look at the Internet.

She doesn’t do syllabus anymore. The students decide what to do for the class. In her class with Brad, they decided to write a book on ideas on open learning. It is in copy editor now. It will be published with HASTAC. Audience member brought up that this wasn’t new and CD agreed that it was very old but not done very often.

Ideas from HASTAC. They are working on badging. HASTAC is a large org with various members some with coding experience. Rabid humanists. Project to teach kids about how to use social media well.

How would someone apply for a badge? Ex. kids go to DC and visit museum, the badge system allows kids to have a more purposeful experience. Gives them structure towards learning experience. Badges are left in the system so others can learn from them. Kids crowdsource other badges. The badge has metadata. Justis: Q: will badges need to be held by institutions or will they also be by communities? It is a meritocracy. No one has to say negatives since it is a matter of the number of badges collected rather than negatives.

Talk about badging within TriLUG.

Q: Assuming badges take off and spread, will institutions link into things like LinkedIn, etc.? A: perhaps, but the current system isn’t working. No one agrees that standardized tests are working. Drop out rates for students as well as teachers is a crisis. We need an alternative and perhaps badging can play a part. Open source education.

Q: How would badging work with fringe areas? A: McArthur is setting up media centers in underused libraries in areas where kids can use it. New Media Center

Q: When you build a model of the badging system what are the bellweathers are when it is working? How can you tell when it morphs into something bad? There will be gamers, how do you deal with them? How does badging work with resources in education?

A: People will try to game the system. You can experiment or innovate if you are afraid of the problems. The system will be subverted. Example of badges for vets where military folks self regulating. They let the vets design their own system.

Many more questions, but I got tired of typing. There was a lot of discussion on how the processes with badging works. The value of badging and the variations of different badges.

I am not sure I understand all the issues that are being discussed about badging and how it would be used. Crowdsourcing of credentials seems to be immature process and would need to be recognized by our organizations to give it credibility.

I was surprised that she didn’t talk much about MOOCs. I think she has moved on from that as a major topic.

Categories: Meeting Notes

IEEE / Robot and Automation Society Meeting 2013-06-03

Panel discussion about Raspberry Pi. Looks like about 40-45 people in attendance. This was a combined meeting of the IEEE chapter and the local TriEmbedded group.

First, everyone introduces themselves. A lot of electrical engineers. Some very impressive people are here. Fred Brooks is sitting behind me. This is the uber geek group. The Robotics and Automation society will meet on the second Monday of each month.

Terrence Fagan from CPCC talking about teaching kids about programming and engineering. raspberry copilot project. You can teach Python and Minecraft. Raspberry Pi Model B $35 credit card computer. Pitfalls: steep learning curve. Teachers overworked. Still in hands of DIYers and Higher ed. Charlotte Latin TedxCharlotteED on an all girls class. Watch video. David Taylor also had a class using Raspberry Pi. Raspberry Pi – Linux. He uses Debian. Scratch game is a great way to get kids involved. Minecraft is a lego like game that can be hacked by kids. Beagle Board – Beagle Bone Black is the new one. It is a compatible with the Raspberry Pi.

Next speaker: Francois Dion – Dion Research. Fully integrated hardware and software development for industry. A group he started – His blog: There were several groups in the Triad area, but not a lot of attendance. He also is part of a hackerspace in Winston-Salem. Raspberry Pi Model A He showed a camera attachment. Raspberry Pi Model B – Minecraft can be implemented in a very small amount of code. You can ssh -X (putty with Windows) into the RP from a desktop. Libelium e-Health 9 biometric sensors. That was a fun demo.

Next Speaker: John Delaney with Fedora. He is demonstrating using the Raspberry Pi as a PDP-11 emulator. Yes, he has gone back in time. A good bit of very technical discussion on the processors within the Raspberry Pi.

Q&A: Demos of some very cool gadgets. People here know a lot more than I do about this and they are speaking in tongues.

Lightning talks: discussion on piping something to an outside service and receive input back such as facial recognition. Arduino takes a photo of a face, pipes the image out to a facial recognition API, and receives the name of the person back. 2) a strange lucite contraption that is very cool; 3) a guy who is using Raspberry Pi in their package for balloon. They have all sorts of devices like accellerometers, GPS, altitude sensors, etc. sending info from Arduino to a storage card. Nearspace balloon project. Showed the camera module for the Raspberry Pi.

Categories: Meeting Notes, Programming

Analytics Camp 2013 – Making Segmentation Work

The last session I am attending at Analytics Camp 2013 is on Making Segmentation Work with Aaron Terry from BCBS of NC. This is completely out of my domain. Marketing analysis is totally foreign to my world.

2013-05-04 15.25.28

Aaron Terry of BCBS of NC Discussing Marketing Segmentation

Different groups within an organization may use segmentation, but other groups may not have a clue what to do with the information.

Below is a copy of his hand-out which is Aaron’s work. My notes are mostly next to his handout text.

1. Ways to leverage an existing segmentation.

-example of market segmenting: family balance, cooking enthusiasts, health nuts, … How many segments are optimal 5-7 due to cost of handling.

-Roll-ups/Sub-segmenting: subseg is separating segments in to sub-segments (ex. healthnuts into sub segments on interest) Roll-ups are the oposite of sub-segmenting, i.e., combining segments into larger groups.

-Classification algorithms

— Short form (for inclusion in future surveys.) This is a short survey of six or seven questions.

– – Database scoring. Use internal data using the same model.

– – Using secondary data (such as Acxiom or Experian) You may be able to map your data to external data from databases and use them in your segmentation.

– Segment profiling (the idea to profile the segment so you can market better to those people)

– – Crossed by other “segmentation” such as customer type, demos, etc.

– – Survey data. Expensive way to get data, but used.

– – Internal data. Databases you have already, but don’t use.

– – Secondary data. You can purchase databases of information

– Estimating changes in segment sizes over time

– Using segment flags as inputs in modeling

– Other ideas?

2) Challenges in implementing segmentation

– Buy-in

– Finding segment members

– Other Challenges

3) What other questions do you have about segmentation/ how to make it work better?

Roger: this was interesting to me since I learned a bit about a domain that I was not familiar with. My notes are a bit slim since I was trying to pay more attention to understand the terminology and concepts.

Categories: Conferences, Meeting Notes

Analytics Camp 2013 – Documenting Mathematical Models

Sessions 4 I attended at Analytics Camp 2013 was on documenting mathematical models.

Steve Burnett and Melinda Thielbar are the presenters. I moved to the much smaller room.

MT: example of a new employee asking for the documentation of the models her new banking employer works. They gave her a stack of SAS programs with no instructions on what to run first.

MT: most analysis works on data in rows and columns. Are they continuous, categorical, predictor(?), outcome(?)

The matrix goes into the magic that flows to the answer.

SB: “raw” data is where you start. There might be multiples of data tables that might be joined together. There might be a filter that combines multiple tables into a shorter table.

Find the TEDx talk about the outliers. Part of the documentation would be how to deal with outliers. Remove dirty, outliers, impossible data points. Part of the documentation would be defining definitions of terms.

Data cleaning should be documented. What are the processes used to clean the data of dirty, outliers, and impossible data points.

2013-05-04 14.47.56

Steve Burnett and Melinda Thielbar Tag Teaming the Session

What does she mean by magic?



Adjacency matrix – discussion within the session.

Melinda does math. “Description of variation in yi”

Documentation of your model is one of the ways you can scale and not iterate 1 on 1.

Glossary of terms. You don’t have to define something that you can look up. Overview. Documenting of data preparation. Filtering criteria. Definitions for rows and columns.

Document how to use the answer you get.

Document how you verify the answers you get.



Categories: Conferences, Meeting Notes

Analytics Camp 2013 – Brain Friendly Presentations

May 4, 2013 1 comment

Session 3 of Analytics Camp 2013 for me is Brain Friendly Presentations with Sidd Chopra

Chopra is an experience speaker with toastmasters. Once worked at SAS.
Started with several slides from the O-ring analysis of shuttle booster rockets. Finally, the outcome of the Challenger explosion. “PowerPoint makes us stupid” Gen James N. Mattis.

2013-05-04 13.39.10

This session is a little different than the “normal” unconference in that he has prepared well.

Sometimes the visualization fails to tell the story. We have got advanced in how we present data, but our brain can’t process it. Our brain needs explanation. Shows different size pizzas and asks which is bigger, by how much?

We spend a lot of money developing products to visualize data, but the flatter graphic may be clearer.

We go back to what is the question we are asking. How do you decide which type of visualization to use? what decision needs to be made? Who decides that?

Brains are focused on things that it finds interesting. It gets analysis paralysis at a molecular level. Wired to find out what is important and then details. We hide conclusions many times to show the data.

Chart suggestions – A Thought Starter

Q: What is the purpose of the brain? A: to control movement.

Example of a sea sponge with brain set solely to find a place to land. It then eats its brain.

What decision makers fear. They don’t like surprises. They want clarity, warnings of threats. They want an Easy Button. Data visualization should provide easy way to visualize what they want. We often overload the audience with data dumps. It is our objective to make their decision makers life easier.

I’m only responsible for what I say, not for what you understand. This is what we have been saying rather than the apposite.

Decisions need to be made.

But our brains are flawed. They process information differently. People aren’t color blind, they perceive colors differently.


Biases. Shows the innocence test.


They have a 3 day workshop that they teach on how the brain works.

Told the Richard Feynman story about testing the O-rings on the shuttle disaster and how powerful the demo was for everyone. The folks could understand it.


Brains are designed for efficiency not accuracy

We are not logical decision makers

you are competing for mindshare

confusion never sells but simplicity does

Categories: Conferences, Meeting Notes

Analytics Camp 2013 – Data Visualization

May 4, 2013 1 comment

Session 2 I attended was a panel discussion on Data Visualization. There was some confusion in that there really wasn’t a defined leader at first. What happened next is part of the unconference magic. People started sharing their experiences and at least 6-8 people were giving some really good information.
Spotfire was mentioned as well as Tableau. Tableau was thought to be a little difficult to share with clients. The on-line demos were good in Tableau and shared with the cloud. You have to be careful not to use confidential data.
SAS is represented so there was discussion of their visualization applications. There seems to be a lot of new applications coming out.
JMP was discussed (SAS).
What are some of the free data visualization software packages? You can google for those and there are some good ones.
Many Eyes from IBM was mentioned with the caveat that you have to upload your data so proprietary data is problematic.

2013-05-04 11.49.37

Discussion on medical data and depending on difficult data to make decisions. There are many problems. Difficulty of doing no harm. One issue is what information did they have before.
Discussion of what types of graphics will actually present your idea the best. Stephen Few and Edward Tufty. Tufty does one day workshops.
“Don’t show your client something that you can’t do in crayon.”
How to deal with multiple axes with different scales. It can be misleading.
Book: Back of the Napkin was mentioned.

Q: How do you validate data visualization graphics? A: validate the data before you visualize. Also, presentation can affect what people see in the visualization. They might interpret the graphics and come to conclusions that might not follow the data. Of course, the visualization may also give you insight that you can’t perceive from looking at the table of data.

Wordle was mentioned as a word visualization tool.

Categories: Conferences, Meeting Notes

Analytics Camp 2013-05-04 Data Built to Last

May 4, 2013 1 comment

1st Session: Data Built to Last with Melinda Thielbar

She’s a data scientist in the RTP area.

2013-05-04 10.42.52

Three things: Actionable, Verifiable, Repeatable.

1. I wish I knew this. This is what I would do if I knew this.
Who is fraudulent? How can I stop them?

2. What do I know now?
Technical process is taking the thing you wish you knew and turning it into what to do now.
You need a feedback loop from what you wish you knew and what you know now. (agile process methods?)

Take action and see if it worked. First verification should be cheap before you go wild.
A/B testing-cheap way to run experiments.
Build a process for the end user so you don’t have to babysit them.

Repeatable: use programmers to build something that is repeatable.

The Endeavor Blog is a good resource.
A learning resources page is on the wiki. There is a Coursera class on data analytics.
Follow hmason on twitter Hillary Mason. starts you with statistics.
More resources and web sites on the analytics camp wiki.

Categories: Conferences, Meeting Notes