Creating an arbitrary surface or any geometric element in FreeCAD

Creating an arbitrary geometric element, such as a surface or a polygon, is a task common in CAD.

FreeCAD provides two ways to do so in its Part module.

The first approach is called Create Primitives, where you specify the parameters to define a geometric element. The menu is Part -> CreatePrimitives. See

An example is below.

The second approach is called Shape Builder, where you build a new shape from elements defined earlier, such as creating a face from edges or vertexes. The menu is Part -> Shapebuilder. See

A good reference of all functions that Part module provides can be found here

Population of Northeast Ohio

Let's just look at some data of the population of northeast Ohio (NEO).

This is what the population distribution in NEO looks like:

In contrast, this is what the overall US population distribution looks like:

NEO is older than the other two big metros in Ohio, Cincinnati and Columbus:

This is what Dallas looks like:

The average ages in Cleveland, Cincinnati, and Columbus are: 41.1, 37.9, and 35.7. As a comparison, the average age of Dallas is 34.2. Cleveland population is 7 years older than that of Dallas.

The fertility rate of Cleveland, Cincinnati, and Columbus are: 4.8%, 5.2%, and 5.4%. As a comparison, the fertility rate of Dallas is 5.4%.

Hence, NEO has fewer women at birth age (15 to 50) than the national average and its fertility rate is under national average. The result? Fewer babies.

Bowtie index building problem for U's in sequences

I am having a weird problem with Bowtie index builder.

I have two entries in my FASTA file:
forrest@narnia:/bioinfo/out-house/miRBase$ cat 157.fa

After building the index, I use bowtie-inspector to check the index.
forrest@narnia:/bioinfo/out-house/miRBase$ bowtie-build 157.fa  157 -q
forrest@narnia:/bioinfo/out-house/miRBase$ bowtie-inspect -s 157
Colorspace 0
SA-Sample 1 in 32
FTab-Chars 10
Sequence-1 ath-miR157a-5p-U 18
Sequence-2 ath-miR157a-5p_T 21

Strangely, the length of ath-miR157a-5p-U becomes 18 instead of 21. The 3 U's of it are missed.

Even more strangely, not all U's in all sequences are ignored. This problem happens for some but not all.

Named Entity Recognition using SpaCy in 5 minutes

Recently, I am looking it SpaCy, a startup and an NLP toolkit. It is fabulous on its speed. Today, I just gave it a try on NER. Just a few lines (as in iPython):

In [1]: import spacy.en
In [2]: parser = spacy.en.English()
In [12]: ParsedSentence = parser(u"alphabet is a new startup specializing in eating their own words on leaving china to fight for information freedom")

In [13]: print ParsedSentence.ents

In [14]: ParsedSentence = parser(u"Alphabet is a new startup specializing in eating their own words on leaving China to fight for information freedom")

In [15]: print ParsedSentence.ents
(Alphabet, China)

In [16]: for Entity in  ParsedSentence.ents:    
   ....:     print Entity.label, Entity.label_, ' '.join(t.orth_ for t in Entity)
349 ORG Alphabet
350 GPE China

I used only default settings. Apparently, the NER of SpaCy is very sensitive to case of words.

Why is it hard to learn Amazon AWS

Amazon AWS is awesome. And it is not really difficult to learn - except the part of reading documents and learning terminology.

If you want answer for one thing, AWS could give you more than one places. For example, if you wanna know how to SSH into your instance, here are the two places in the same user guide:


I wish the learning experience can be easier.