General,Software Development

ลง VPython (python-visual) ใน Anaconda

VPython is a visualization python library.
It helps to create environment that can represent a natural phenomenon.
It is used as a tool for Physics tutorial.
To install inside the Anaconda, Python distribution, you need to install the Anaconda firstly at https://www.continuum.io/downloads

After that, please install Conda-build:

conda update conda
conda install conda-build

Then, clone the repository:

git clone https://github.com/mwcraig/conda-vpython-recipes.git

To build VPython by yourself, go inside ‘conda-vpython-recipes’ directory, and, compile its bundle of dependencies.
Please follow the steps below:

cd conda-vpython-recipes
conda build boost-vpython
conda build fonttools polygon2 ttfquery vpython
conda install boost-vpython –use-local
conda install vpython –use-local

Testing by import it inside Python:

import visual

มาตรฐาน
Researches,Software Development

หา Statistic ของ Packets ที่เข้าออก Mote ใน Contiki ทำอย่างไร

หา Statistic ของ Packets ที่เข้าออก Mote ใน Contiki ทำอย่างไร?

ลองหาดูในตัวอย่าง sky-collect.c จะเป็นว่ามีการใช้ RIMESTATS_* ด้วย ให้ทำตามนั้นเลย .. อย่าลืมว่าต้องแก้ Makefile และ project-conf.h ด้วย อ่านเพิ่มเติม

มาตรฐาน
Software Development

เรียบเคียง Observer Pattern ใน Java

ให้จินตนาการว่า มี Objects จำนวน n, จะทำงานเฉพาะตน .. หากมีการเปลี่ยนแปลงภายใน Obj. ที่ถูกเฝ้าสังเกต (ทำการ Notify แก่ Observer อัตโนมัติ)

อ้างอิง: http://www.tutorialspoint.com/design_pattern/observer_pattern.htm  อ่านเพิ่มเติม

มาตรฐาน
Internet & Web Application,Software Development

การใช้งาน Git เมื่อต้องแก้ Issue: Branching and Merging

จาก https://git-scm.com/book/en/v2/Git-Branching-Basic-Branching-and-Merging

ขณะที่เราทำงานกับ Master Branch นั้น หากเกิด Issue หรือต้องการเพิ่ม Function ก็สามารถแยกไปทำ Branch ใหม่ได้

$ git branch iss53
$ git checkout iss53

เมื่อแก้ไขแล้วก็แค่ Commit (ตอนนี้อยู่ที่ iss53)

อ่านเพิ่มเติม

มาตรฐาน
General,Software Development

Local Webserver Told “Access Forbidden!”, Even Browsing from Same Local Machine

My localhost webserver told me that it could not let me access any pages because I browsed from another machine.

Since I am so sure that I sat down on the same machine, i.e. my notebook, as this webserver, I wondered and think it was unbelievable.

However, using Wireshark to catch packages, I found that it real! .. I used an source IP address of global network to connect with localhost network. How surprising!

After trying for while, I got the cause. The source IP address was changed, so that I set an ‘IPTABLES’ rule wrong.

It masqueraded all packets from my computer without filtering, ever local packets to localhost.

So, I changed it as a following rule.

-t NAT -A POSTROUTING -j MASQUERADE

to

-t NAT -A POSTROUTING -j MASQUERADE -s 192.168.3.0/24

มาตรฐาน
General,Software Development

Linux on Android

    1. On Genymotion 2.0.1: Android image version > 4.2.2 do not work
    2. Install Google play.
    3. Install Linuxonandroid, AndroidVNC, and Terminal Emulator.
    4. Download Ubuntu13.04-x86.zip on Linuxonandroid website.
    5. Copy Ubuntu13.04-x86.zip into the android emulator image.
    6. No need to install ‘busybox’ because it was shipped with the image.
    7. Unzip Unbuntu13.04-x86.zip.
    8. Run Linuxonandroid and Select Ubuntu13.04-x86 as a target.
      1. It will fail at the first time.
      2. Rename the /data/data/com.zpwebsites.linuxonandroid/files/busybox to busybox.old → It’s ARM excution version.
      3. Link /system/xbin/busybox to

/data/data/com.zpwebsites.linuxonandroid/files/busybox

  • > link -s … …
  • Run it again.
  • มาตรฐาน