Use Homebrew Rollback Python to 3.6.5x

 

เจอหลายๆ คนซื้อ Macbook มาใหม่ แล้วพยายามลง Python3 แต่ปรากฏว่า Homebrew ดันลง 3.7 ให้ พยายามจะไป Search หาเท่าไรก็ไม่เจอ วันนี้เรามีทริกมาแนะนำง่ายๆ เพียงสองบรรทัด

brew unlink python
brew install https://raw.githubusercontent.com/Homebrew/homebrew-core/f2a764ef944b1080be64bd88dca9a1d80130c558/Formula/python.rb

Install Docker and Docker Compose on Amazon Linux

Docker Compose is the tool for running multi-container Docker applications. With Docker Compose, you use a YAML document to arrange your application’s administrations. At that point, with a single command, you create and start all the services from your docker-compose.yml file. This is an easy 6 step to install Docker and Docker Compose on Amazon Linux.

Photo by Will Turner on Unsplash

Photo by Will Turner on Unsplash

sudo yum update -y
sudo yum install docker
sudo curl -L "https://github.com/docker/compose/releases/download/1.22.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
sudo usermod -a -G docker $USER
sudo service docker restart

How does it work?

  • update the latest version.
  • use yum to install docker
  • download and install docker-compose from GitHub repository
  • add execute permission to docker-compose
  • add the current user to docker group
  • restart docker service DONE!!!

 

Docker cleanup cheat sheet

docker-cleanup-cheat-sheet

รวมคำสั่ง Docker Cleanup ที่ต้องใช้บ่อยๆ จะได้ไม่เสียเวลาค้นหา

Docker


Delete all stopped container

docker rm $(docker ps -a -q)

Delete all untagged image

docker rmi $(docker images -q -f dangling=true)

Delete ALL images

docker rmi $(docker images -q)

อย่าลืมไปเยี่ยม cookly.me นะครับ

ทำไมถึงควรเลือกใช้ Mercurial SCM

Distributed revision control เป็นเครื่องมือที่ Developer สมัยนี้จะต้องหามาใส่หัวให้ได้ Mercurial ก็เป็น DVCS ชนิดหนึ่งที่เป็นที่นิยมในตลาด ( หมายถึงตลาดโลก ในเมืองไทยหายากหน่อยนึง ) แต่หลายคนที่พยายามจะเปลี่ยนจาก Subversion มาเป๋น DVCS ก็ยังสับสน ว่าไอ้ที่มีอยู่หลายเจ้านั้น มีดียังไง ผมจะสรุปคร่าวๆโดยที่พยายามพูดถึงเจ้าอื่นให้น้อยที่สุด เพื่อไม่ให้เกิดดราม่า

  • Mercurial สามารถทำงานได้ดี ในทีมที่มีหลายๆคน เพราะว่าแต่ละคนก็มี repo ของตัวเอง
  • เนื่องด้วยแต่ละคนมี repo ของตัวเอง อิสระในการทำงานก็สูงกว่า ไม่ต้องกังวลว่าจะไปพังของใคร แล้วทำให้ทั้งระบบต้องหยุด
  • สามารถทำงานแบบ Stand Alone แค่เพียง Check Out มา จะ Commit ก็ครั้งก็ได้ พอต่อเน็ตได้ค่อย Push ทีเดียว
  • แต่ละ Rev. มีเลขกำกับ เหมือน SVN ต่างจาก Git ที่เป็น Hash ยาวๆ จำยากๆ แต่ก็มีข้อเสียที่หมายเลข Rev เดียวกันนี้ จะแตกต่างไปจากคนอื่นๆ สร้างความสับสนพอสมควร เอาให้ชัวร์เวลา Merge ก็อ้างจาก Hash นั่นแหละ
  • ลงง่าย ใช้เร็ว มีเกือบทุก Platform
  • Guido ใช้ ( อันนี้ไม่รู้เป็นข้อดีหรือเปล่า อารมณ์ประมาณเหมือนใช้กระเป๋า ใช้มือถือตามดาราที่ชอบ )
  • มี Web Server build-in อันนี้ชอบมาก เหมาะกับคนที่ไม่ได้ใช้ผ่าน GUI สามารถสั่ง hg serve ไปเปิดไปที่ http://localhost:8000 เลย
  • ฟรี!!!

นึกต่อไม่ออกแฮะ ตัดจบเลยแล้วกัน

จาวาเร็วส์

จาวาใครว่าเร็วส์ ทุเรศ
ท่านผู้นำสมเพช แม่งค้าง
ความดีบ่เบิกเนตร ใครขัด กูด่า
ใครคิดเหตุผลอ้าง กูบล็อก เว็บกู

Test Driven Development ด้วย Django Unit Testing (ตอนที่ 1)

Django มีสุดยอดแห่ง unit testing ที่ build in มาในตัว framework เรียบร้อยแล้ว, คนมักจะไม่ค่อยใส่ใจกับมันเท่าไรนักเพราะว่ามันมาแบบ “out of the box” แต่นั่นไม่ได้หมายความว่าเราจะละเลยส่วนั้นได้ เมื่อเราสร้าง Application ของเราเองขึ้นมา เพราะว่าเทสต์นั้นทำให้เรา “คิดออก” ว่าอะไรที่ควรจะทำให้เสร็จ เพราะฉะนั้นเราจะมาพูดเรื่องทำอย่างไรให้ Application สามรถทำงานได้เป็นอย่างดี
เมื่อมาถึงตรงนี้แล้วผมจะพยายามแสดงให้เห็นว่า ทำยังไงจะใช้ TDD ใน Django Application เราจะสร้าง Project เล็กๆ และมี Application เพียงตัวเดียว และใช้ Unit testing เป็นตัวกำหนด ว่าจะออกแบบ algorithm และจะ implement class อย่างไร
Continue reading

Barcamp Bankhen Live

นั่งฟังเรื่องแรก Atom Server ของอาจารย์ภุชงค์ Intro เสียเกินครึ่ง แต่ก็ได้รู้เรื่องประวัติศาสตร์เสียมาก พูดเรื่อง Super Computer ที่เมืองจีน โดยพัฒนาโดยวิศวะกรของจีนเอง และยังพูดถึงเรื่อง CUDA ของ Nvidia ที่เปลี่ยนเรื่อง Program Design ไปเลย และ OpenCL ของ Apple ที่นำความสามารถของ GPU มาใช้ประมวลผล ใช้มือถือสร้าง Super Computer เนื่องจาก Balance ของ Power กับ Performance ได้ดีที่สุด แนวทางการโปรแกรมมิ่งแบบ Message Driven
หลังจากนั้นมาพูดเรื่อง Blueprint CSS พูดไม่ได้เร็วเท่าไร แต่ไม่มีเรื่องจะพูดซะงั้น lol
หลังจากนั้นมาได้เข้ามานั่งฟังเรื่อง Open Source Enterprises พูดเรื่องการ implement open source ค่าใช้จ่ายต่างๆ Commercial Software เกือบทั้งหมด จะมีชิ้นส่วนของ Open Source หัวข้อค่อนข้างยาว ง่วงนอนมาก
หัวข้อสุดท้ายมาฟังเรื่อง ใครว่าไมโครซอฟท์ใจร้ายโดยอาจารย์ศุภเดชและพี่หลาม งานนี้เพิ่งรู้ว่ามีของฟรีให้ใช้เยอะขนาดนี้ ไม่มาไม่รู้จริงๆ
ระหว่างวันได้เจอกับ iannnn ตัวเป็นๆ ไม่กล้าบอกว่าคุณคือไอดอลของผม จุ๊ฟๆ lol นอกจากนี้ยังมีพี่อึ่งที่เดินวนไปวนมา เจอกันทั้งวัน พี่อึ่งเล่าให้ฟังเรื่องรับอบรมติดตั้งระบบ Ubuntu หวังว่าสักวันคงจะได้ทำแบบนั้นมั่ง หาอิสระเสรีให้ชีวิต
ตัดจบดื้อๆ เขียนต่อไม่ออก.

I think we got a case of a little lump of coal here. That’s turning into a diamond.

ประโยคนี้มาจาก Amanda Holden ในรายการ BGT ปีที่พอล พ็อตเข้าแข่งขัน ผมประทับใจตรงที่คนธรรมดาเดินดิน มีความไฝ่ฝันและพลังใจอันแรงกล้าที่จะเดินตามฝันของตัวเองได้อย่างไม่ย่อท้อ เตือนใจให้เห็นว่า “ลิขิตฟ้าหรือจะสู้มานะตน”