Não bộ, động lực làm việc, và các “công tắc” kích thích động lực làm việc

Deep thought

Đọc xong cuốn “のうだま―やる気の秘密” (tạm dịch là bí quyết tạo động lực bằng đánh lừa bộ não: http://tinyurl.com/ycmmsx5) của tác giả Ikegaya Yuji (http://www.hippocampus.jp/CV/) – một nhà nghiên cứu về não bộ. Có mấy điểm tóm lược rút ra từ cuốn sách.

– Tính “chóng chán” là đặc tính mà ai cũng có vì đây là cơ chế cố hữu của não bộ trong quá trình tiến hoá của con người. Điều này thấy rõ nhất ở trẻ con. Khi gặp một thứ đồ chơi mới mẻ, trẻ con sẽ rất hứng thú chơi, khám phá, nhưng chỉ sau một thời gian chơi, trẻ sẽ chán đồ chơi đó. Vì thế, khi bạn cảm thấy mình nhanh chán cái gì thì cũng không nên tự dằn vặt mình. Quan trọng là tìm ra phương pháp để vượt qua nó.

– Động lực làm việc liên quan đến…

View original post 330 more words

Advertisements

Maven shade plugin

If you are using Maven to your Java project and you want to build with dependencies, add this to pom.xml to build:

<build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <createDependencyReducedPom>false</createDependencyReducedPom>
                    <shadedClassifierName>shaded</shadedClassifierName>
                    <shadedArtifactAttached>true</shadedArtifactAttached>
                    <filters>
                        <filter>
                            <artifact>*:*</artifact>
                            <excludes>
                                <exclude>META-INF/*.SF</exclude>
                                <exclude>META-INF/*.RSA</exclude>
                                <exclude>META-INF/*.DSA</exclude>
                            </excludes>
                        </filter>
                    </filters>
                </configuration>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <shadedClassifierName></shadedClassifierName>
                            <transformers>
                                <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
                                <transformer
                                    implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>vn.com.ducnt.Main</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>

Turn Off Bluetooth By Default In Ubuntu 14.04

Open a terminal and use the following command to install gksu, if you dot have it installed it already.

sudo apt-get install gksu

gksu is used to enter password while running a program as root. Once you have gksu installed, use the command below:

gksudo gedit /etc/rc.local

It will open the rc.local file. Just add the following line just before exit 0.

rfkill block bluetooth

Altogether, your rc.local file look like this:

That would be it. Restart the computer and you should see that Bluetooth has been disabled. Of course you can turn it on when required by the Bluetooth indicator on the top panel.

Explanation:

This little section is just to give a brief explanation of what we did here. It’s not obligatory to read this section. You can skip to comment section for your suggestions or thanks :)

rc.local file is used to run various shell commands at start up time. These commands are user defined. In a clean install, rc.local has no commands to run. What we did here was to add rfkill block bluetooth. rfkill is a tool to query the state of various switches, buttons and subsytem interfaces. With this command in rc.localm we are basically soft blocking Bluetooth at each start up time. I hope this explains the things a bit.

5 Best Python Libraries For Data Science

If you have decided to learn Python as your programming language.

“What are the different Python libraries available to perform data analysis?”

This will be the next question in your mind. There are many libraries available to perform data analysis in Python. Don’t worry; you don’t have to learn all of those libraries. You have to know only five Python libraries to do most of the data analysis tasks. I will give a short introduction to each of these libraries, and I will point you to some of the best tutorials to learn them.

So let’s get started,

Numpy

It is the foundation on which all higher level tools for scientific Python are built. Here are some of the functionalities it provides:

  1. N- Dimensional array, a fast and memory efficient multidimensional array providing vectorized arithmetic operations.
  2. You can apply standard mathematical operations on arrays of entire data without writing loops.
  3. It is very easy to transfer data to external libraries written in a low-level language (such as C or C++), and also for external libraries to return data to Python as Numpy arrays.Linear algebra, Fourier transforms and random number generation

NumPy does not provide high-level data analysis functionality, having an understanding of NumPy arrays and array-oriented computing will help you use tools like Pandas much more effectively.

Tutorials

  1. Scipy.org provides a brief description to Numpy package.
  2. Here is an amazing tutorial that completely focuses on usability of Numpy

Scipy

The SciPy library depends on NumPy, which provides convenient and fast N-dimensional array manipulation. The SciPy library is built to work with NumPy arrays, and provides many user-friendly and efficient numerical routines , such as routines for numerical integration and optimization. SciPy has modules for optimization, linear algebra, integration and other common tasks in data science.

Tutorial

I couldn’t find any good tutorial other than Scipy.org. This is the best tutorial for learning Scipy.

Pandas

It contains high-level data structures and tools designed to make data analysis fast and easy. Pandas are built on top of NumPy, and makes it easy to use in NumPy-centric applications.

  1. Data structures with labeled axes, supporting automatic or explicit data alignment. This prevents common errors resulting from misaligned data and working with differently-indexed data coming from different sources.
  2. Using Pandas it is easier to handle missing data.
  3. Merge other relational operations found in popular databases (SQLbased, for example)

Pandas is the best tool for doing data munging.

Tutorials

  1. Quick intro to pandas
  2. Alfred Essa has a series of videos on Pandas. These videos should give you a good idea of basic concepts.
  3. Also don’t miss this tutorial by Shane Neeley, this video gives you a comprehensive intro to Numpy, Scipy and Matplotlib.

Matplotlib

Matlplotlib is a Python module for visualization. Matplotlib allows you to easily make line graphs, pie chart, histogram and other professional grade figures. Using Matplotlib you can customize every aspect of a figure. When used within IPython, Matplotlib has interactive features like zooming and panning. It supports different GUI back ends on all operating systems, and can also export graphics to common vector and graphics formats: PDF, SVG, JPG, PNG, BMP, GIF, etc.

Tutorials

  1. Show me do has a good tutorial on Matplotlib
  2. I also recommend the cook book from pack publishers. This is an amazing book for someone getting started in Matplotlib.

Scikit-learn

Scikit-learn is a Python module for Machine learning built on top of Scipy. It provides a set of common Machine learning algorithms to users through a consistent interface. Scikit-learn helps to quickly implement popular algorithms on your dataset. Have a look at the list of algorithims available in scikit-learn, and you can quickly realize that it includes tools for many standard machine-learning tasks (such as clustering, classification, regression, etc).

Tutorials

  1. Introduction to Scikit-learn
  2. Tutorials from Scikit-learn.org

Conclusion

There are also other libraries such as Nltk(Natural language Tool kit), Scrappy for web scraping, Pattern for web mining, Theano for deep learning. But if you are getting started in python, I would recommend you to first get familiar with these 5 libraries. I have mentioned the tutorials that are beginner friendly, before going through these tutorials ensure that you are familiar with basics of python programming.