Your first semester in university doesn’t have to be miserable!

Learn how to Learn and make your first semester in a new school a much, much better experience!

Clueless freshmen, gather round!

Well, let’s just say that by getting into a university you have undertaken an important leap into a new land. The land of academia, the land of self-study, the land of distractions, the land of unforgiving exams without partial credits, and probably a hundred things that could be happening at the same time. By stepping into a campus, you have put a lot of things into motion. All of those do not matter: right now you are a clueless freshman, young and fresh, yet at an extreme risk of being misguided and misinformed.

I’ll just tell you a few tips here in small, manageable chunks. They will mostly deal with engineering, maths, and computers though because that’s what I’m specialized at. The focus is mostly on Thai schools, because that’s where I came from. However, I hope it is also applicable to other countries as well.

Rule 0: Scout and pick your battles.

Victorious warriors win first and then go to war, while defeated warriors go to war first and then seek to win. — Sun Tzu

The entire campus is a battlefield, and each class can be a really tough beast! You must know which battles you can fight and how many fronts you can take at once. There are small skirmishes like your in-department elective classes which are obviously your specialization, then there are great battlefields in which millions of great soldiers were slain. Those classes are faculty-level lectures like Chemistry or General Physics.

Learn to scout your battles beforehand so you can pick your battles. You need to know:

  • Your curriculum: how many credits you need, which classes are required, and which classes are elective.
  • Who’s teaching which class.
  • The time of week and how much free time to have.

Taking too many classes, especially during the first semester when many “basic” classes such as calculus and chemistry can be an overkill, can burn you out quickly. Sometimes curriculum comes with a class plan, a by-semester plan that tells you which classes you should take which semester. Sometimes this is really helpful, sometimes not. Use your judgement and adjust accordingly.

If you talk to your upperclassmen, you will learn that not all lecturers are the same . Even if they are all teaching the same class, they might have different styles, experience, or level quality. Some do not give a damn about your education, while some go out of their ways to answer absolutely everything as long as you have time to listen to them. Less experienced lecturers (especially those without “something-Prof” in their names) can be very enthusiastic and understanding of your concerns, but may have a hard time coming up with an answer for a complex question. Some lecturers have a mindset that you must bring something to the table to talk to them. This means you can’t just come in and ask. You must have prior information, such as a list of theorems that you want to use, references, and most importantly your attempt at the work. Therefore, if you have a choice, choose your lecturers wisely.

As long as you follow the curriculum and do not pick any classes you are barred from (e.g. “Engineering students must take Engineering Mathematics and not Calculus”). No one, not even your adviser, has any absolute say over which classes you pick. You might get liked or get hated, but you won’t get expelled for picking a class.

First Day: Syllabus, the map of the class.

Syllabus is the metadata of the class. Everything important is written there, including lecturer’s contact information, when you can meet him/her (called office hours ), list of teaching assistants (TAs), hours, what will be taught each week, how will you be graded (typically 100% exams, or maybe 80% exams and 20% reports, but it may vary between each class).

This information is extremely important. Sometimes, a teacher may actually write what will be on the exams right on the syllabus. Sometimes this can be slightly less or more than what is lectured in class.

The syllabus is the most important document in the class. Normally you would get one in the first class, but if you don’t for any reason, you must contact the lecturer, or one of the TAs, or consult the website, as soon as possible to obtain one.

First Week: Learn early, study regularly, and do your homework.

The last thing I want to see you do is cramming everything 24 hours before the exam and go to the exam hall tired. That will be your bad end in the class. Instead, think of learning as laying a brick wall. You want to allow each layer of bricks to set into place before you start with the next layer. If you do it too quickly, you will do poorly and the bricks will collapse, giving you a messy wall that nobody wants. Learning slowly but regularly allows your brain to retain the information for much longer than cramming everything in a few hours. Instead of reading everything right before the exams, try reviewing (using both reading, writing, and recall, which I will explain later) every week or every few days.

Do not leave your homework unattended. (Good) Homework assignments are designed to improve and test your understanding of the content and is a way to make sure that everything goes in a regular pace. Some good teachers also give well-detailed homework feedback that points out where you went wrong. Being wrong can be very helpful in your learning process.

Second Week: Learn your limits and learn to chunk.

By the second week of the class you should have gone beyond the “introduction” phase. This is when the teacher actually opens chapter one in his lectures and begin firing more advanced content at you. It may feel overwhelming to learn large concepts such as complex equations and four-character Japanese word, where each character has like 20 strokes. That’s absolutely normal. It’s how your brain works.

Your brain is wired to receive only a few things at a time, but have a very powerful back-storage or long-term memory. Average humans cannot hold more than three or four things at a time in their brains, but this “thing” is a very extensible concept: it can be a single number, a single Chinese character, or a whole parallel parking process. The brain uses what we call “chunking” to expand small facts and steps into larger concepts and algorithms.

In this chunking process, your brain groups many things together. Instead of writing each stroke, your brain can learn that the strokes go together to form a character, and many characters form a word. Training and repeating your chunks will make it stronger, and that’s why teachers insist that you say those words in class out loud, or solve a problem on a blackboard on your own — solving various problems allow your brain to form a better chunk of the kind of the problem, allowing you to do it better and quicker. It is especially important to exercise your mind a little by solving problems from scratch.


Relaxing is as important as, and at times more important than, studying.

Have you ever wondered why you study so well when at your desk, but figure something out while in the shower? That’s because your brain has two distinct modes: focused and diffused. Focused mode is used when your brain wants to do something very deliberate, like solving mathematical problems or learning to write a new word. It can help you learn new concepts and create chunks. This is common knowledge. However, where your hidden power lies in is the diffuse mode. While your brain is in diffuse mode, it can synthesize and map multiple chunks together. This allows you to create powerful solutions to the problems to have. And what’s best about the diffuse mode? It runs in the background while you relax!

Switching around between the focused and diffuse modes can be beneficial to your study. There are many techniques that help you do this. One of them is Pomodoro. Essentially you must dedicate 25 minutes to work, then a mandatory 5 minutes of rest. Both are necessary, as working too much will tire you out and not allow the diffuse mode to kick in.

When faced with great difficulty, back off. You will synthesize a solution better when you are relaxed because your diffuse mode has a very fast solution-finding speed compared to grinding your mind or bashing your head on it. This principle also applies in exam, which I will explain later in its own section.

Dealing with procrastination and the torture of study sessions

Like how water flows down to the lowest point, your mind will also seek to do whatever it feels relaxing. Work is tiring. Studying is a torture. I know.

I would break a very big study goal into manageable sessions. Instead of saying I’ll do 100 problems this month, I’d just do 5 problems a day. I will still have 10 more days for slack. That sounds like a good deal, the “only $0.15 a day” (for 10 years) kind of deal. Instead of saying I’ll finish this report this week, I’d break it down into five sections, each to be done each day of the week. Breaking things down and focusing on doing it (the process ) and not completing it (the product ) will make it easier for your mind to get on it, as individual steps and the simple act of “just working” is not as steep as “finish this whole thing.”

Now write that goal onto a planner or something you will look again in the morning. Writing things down is like a save function for your mind. Free up your working memory by putting it onto some other medium that’s not your head. That way you can concentrate on getting it done … pardon me, doing it , tomorrow. When tomorrow comes, eat your frogs first and do the biggest, hardest, or the most daunting task first. Your fresh mind that was just fully fueled by breakfast (important!) and sleep (also important!) can tackle hard subjects better than the exhausted mind in the late afternoon.

Finally, don’t forget to reward yourself. Your brain likes rewards and has a dedicated part for this function. Every time you do something good, reward yourself a little. Your little zombie in your brain will appreciate it.

Testing yourself is better than reading over and over.

Simply rereading (or merely highlighting) worked solutions and text may seem like a lot of progress because hey, I just read the whole thing again! But guess what: it doesn’t work the way you think. Reading, listening, and maybe watching videos only let you passively sense the material using your eyes and ears. Sure, some of it might go into your brain, but the best way to retain everything in your brain is to test yourself. Close that book, try to recall as much as possible from your head. Write the outline for the whole chapter and as many points as possible on a sheet of paper. This act of “active learning” forces your mind to write the material over and over, strengthening the memory in your head.

A similar kind of “illusion” occurs when you highlight text. Hilighting text gives an illusion that you’re making a lot of progress, but it is not a good idea to highlight too much. A better way to annotate your book is to use a pencil to write in the margins or on a post-it. Summarize the whole paragraph or make a simple derivation from the text yourself. Then test yourself about it.

If you want to learn more, maybe you could google for “Learning Pyramid theory.” So far it works for me.

Teach to learn.

If you want to go fast, go alone. If you want to go far, go together. — African proverb

While testing yourself is better than reading, testing your friends and getting tested by them and actually discussing the problem is much better than testing yourself on your own!

Despite how competitive it may be (for example, classes with a “grade on a curve” or “limited A” policy), you need friends to succeed. As I told you earlier, passive learning is not a good idea. A better idea is to teach your friends by writing up your own version of the textbook, take turns giving lectures to your friends, test each other, or becoming a “master” of a specific course and help your classmates in a group. Teaching means you must recall everything from your brain, derive the formulas live, and demonstrate mock labs live. Extensive “my lecture notes” teaching material must also be well-prepared. Everything that leads up to teaching will force you to learn, and will make you keep more content and skill in your mind. Discussing with friends also open you to other perspectives of the same thing. Maybe the way your friend is deriving all those equations is much better than yours and you should learn from them, but your substitution rule just rocks and they can learn from you. When two great minds meet, many good things can happen, so talk to your friends!

Note, however, that you have to be punctual and disciplined when doing group work. Do not let it (d)evolve into a pizza party before the study session ends.

Change your place.

Your mind inadvertently associates a place you are in with some pieces of memories. This is not desirable, as you will have difficulty recalling this information later in the exam room, which is not your favorite room. Go out of your comfort zone and read in many places so the place-content association is weakened. Generally, during exam week, campus libraries may have extended or 24-hour service.

Note that using McDonald’s or public locations with high patron turnover is frowned upon. If you really need to use this kind of public space, remember to order food and service proportionately.

The Exam

The week leading up to an exam, you should have already learned all material well by using techniques above. Get at least 8 hours sleep every night no matter what, as sleeping clears up your mind and the sleeping mind is fully relaxed, free of stressing thoughts. Do not skip a meal, especially on the exam day itself. Stop all heavy study activities 24 hours before the exam. Maybe you will want to freshen your mind a bit by doing a few problems, but that’s all you should do. Do not reread the whole book and retest yourself on it the day before exam.

If a cheat sheet (i.e. your personal reference or note) is allowed in the exam, make your own from understanding. Remember chunking and recall? Synthesizing and writing those concepts down yourself will give you a clearer imprint of the data in your brain, allowing you to utilize it better. Most of the time “one A4 cheat sheet” is just a ploy to get you to read and write.

It may be wise to have an emergency alarm clock: your family or friend to call you to exam using the phone. If you live with someone, ask him/her to wake you up, violently if necessary. Prepare or find at least 2 or 3 means of transportation to your campus.

If your university has a dress code (almost all Thai universities have prescribed uniforms), follow it. Prepare at least two non-mechanical pencils, two pens, and a plastic eraser. Prepare at least your student ID and another government-issued ID. Arrive at least 1 hour early to your campus, and at least 15 minutes early at the exam room. If you suspect that the venue may be changed, contact the faculty hosting the examination immediately. If you cannot find your credentials, go to your registrar office the first thing (as early as possible) and ask for a temporary certificate of identity. Your campus may have different procedures, but this is what I got.

While you wait, meditate. Close your eyes, think of nothing. Let every sound flow through your ears. Let air flow through your nose. Let everything in the universe flow through as you were not there. Feel your breathe. Do this for at least a minute. You will automatically relax and enter diffuse mode soon enough.

When you are called to the exam, sit down, check all pages, write your name if it’s okay. Now, onto the real tips. Skim the whole test and pick the hardest questions first, BUT only do it for less than a minute or two. When you are stuck on it, meditate a bit and move on to an easier question. While you struggle with the hard questions using your focused mode, when you meditate and switch to an easier question, your diffuse mode will kick in and will contemplate on the answer on its own. Use your brain power on the easier questions first. When you are stuck, rotate again. Be extremely thorough in your answers and write as much as possible.

You should also write your understanding or interpretation of the question if it seems unclear and the examiner/proctor does not give you an answer or clarification. Some teachers automatically give you the benefit of doubt if you tell him/her how you interpret the question. It also helps you get on track with the question. Show all your work, then summarize your answer again at the bottom. Circle or underline the answer if asked to do so.

When you are done, check everything again and make sure it is in order. If you are allowed to leave the examination room early, do it. When you are out of the room for any reason, leave the premises immediately and do not talk to anyone. You have used your brain enough the last hour — no need to waste it more.

If you have any problems with a class:

  • Ask a TA or the lecturer. Do not guess. Do not speculate. Do not trust anyone who claims to have authoritative information until it can be proven. Sometimes a series of speculations become an unofficial fact, which is not true at all.
  • Always show that you have already tried before you ask.
  • Your problem with a class is your problem that should be addressed directly by a teaching staff. Use your judgement whether or not should you involve your classmates. An absolute NO is whenever it is related to grading, exam, late days, and anything that directly affects your score.

PSA: You are free to choose your kind of fun!

There are many kinds of fun in universities! This is a great chance to meet someone new! However, not all activities and student assemblies are totally honest about the presentation or interpretation of their activities.

Every year, many freshmen in Thailand are rounded up and brought to what they call “SOTUS” activities, misinformed that it is a mandatory activity. “Cheer class.” “Pep.” “Icebreaking.” “Bonding.” Those words are just disguises for what actually can amount to systemic collegiate hazing. Good, diligent students have lost their lives from this “tradition” of extremism and violence. Being a “senior” does not imply any actual seniority.

Please contact your adviser or a trusted upperclassman if you feel uncomfortable or being abused! You have all the rights to walk away from any campus hazing, even if it is disguised as a mandatory icebreaking activity. You can also contact me (the email should be in About section of this website) or any social volunteer anytime. I am neither press nor counselor, but I am not your enemy and I am willing to hear you out. (Please be descriptive in your email subject.)

References & Disclosure

This article was written as a final project for Prof. Barbara Oakley’s Learning How to Learn: Powerful mental tools to help you master tough subjects , a Massive Open Online Course (MOOC) from University of California, San Diego (UCSD), available at no cost at Coursera. Most of the content in this article, especially those regarding memory, learning techniques, and anything directly related to your brain, is derived from this subject.

That said , some of the content here was added from my own experience as a student. I was a student before, and I hope my experience, along with Prof. Oakley’s wisdom, will help you learn better. Now go to school and do your best.

[Math] How to find drop rate after killing “x” monsters

English version available after the break. Summary: we are talking about how to find out the number of monster kills necessary to get a number of drops using statistics.

อีกประโยชน์ของวิชา prob stat: คำนวณว่าต้องตีมอนกี่ตัวถึงจะมีโอกาสเก็บ rare drop ได้ครบ โดยใช้ negative binomial distribution (Pascal distribution?)

สิ่งที่เราอยากรู้คือ CDF (cumulative distribution function) ไม่ใช่ PDF (probability density function) เพราะ PDF เป็นการบอกว่าจะได้ของครบที่การตี x ตัว แต่ CDF จะบอกเราว่าเมื่อเราตีไปแล้ว x ตัว โอกาสที่เราจะได้ของครบ (นับตั้งแต่การตีตัวแรก) เป็นเท่าไหร่

ยกตัวอย่างการตีความ จะได้ว่า
– PDF ที่ x = 5000 มี P(X=5000) = 0.001 แสดงว่า ความน่าจะเป็นที่ของดรอปครบตอนตีมอนได้ 5000 ตัวพอดีอยู่ที่ 0.001 หรือ 0.1%
– CDF ที่ x = 5000 มี P(X<=5000) = 0.6 แสดงว่า ความน่าจะเป็นที่ของดรอปครบตอนตีมอนไปแล้ว 5000 ตัวอยู่ที่ 0.6 หรือ 60% (อาจจะครบก่อนหน้านี้ก็ได้)

ฟังก์ชันใน Wolfram Alpha ชื่อ NB(r,p) โดยให้ r = จำนวนของที่จะใช้ และ p = drop rate
สำหรับ MATLAB หรือ octave สามารถใช้ nbinpdf และ nbincdf ในการหาค่าจาก PDF และ CDF ได้


ภาพข้างบนแสดงให้เห็นความแตกต่างระหว่าง PDF ที่เป็นการแสดงโอกาสรายครั้ง กับ CDF ที่เป็นการบวกสะสม PDF อีกที จะเห็นว่า PDF มีรูปคล้าย (แต่ไม่ใช่) รูประฆัง ในขณะที่ CDF เป็นรูปตัวเอส (ทั้งนี้ เนื่องจากจำนวนมอนที่เราตีเป็นจำนวนเต็มเสมอ จริงๆ กราฟทั้งสองต้องแสดงจุด ไม่ใช่เส้น แต่ช่างมันเหอะ ไม่งั้นมองไม่เห็น)


Continue reading [Math] How to find drop rate after killing “x” monsters

[Math] No Free Chocolate. Period.

Alright, I’m so fed up with these “social network shares” about getting free chocolate by breaking a bar and rearranging the pieces, as shown in this video:

Here’s my complaint: I followed the video MATHEMATICALLY, on a paper, and found out the entire bar of chocolate is shortened! Hey! That’s NOT what we call free chocolate!

Diagram disproving the video above

SVG Version

EDIT: It is also noted by @minikoong that my representation has an error. Apparently, the original chocolate bar is nominally 360000 pixels in size, but when cut, the 40-pixel reduction from the top causes the main chocolate bar to reduce to 344000 pixels. According to one-block size of 150*100 = 15000 pixels, there is apparently a (360000-344000+15000)/360000*100 = 0.2778% loss. I admit it is my error in the drawing: the length of “new” chocolate bar should be 862.5 pixels, not 860.

Review: Hazard 4 big-koala Smart Phone Pouch

วันนี้ผมไปซื้อเจ้า Hazard 4 big-koala Smart Phone Pouch มาจากร้านแห่งหนึ่งที่ดิโอลด์สยาม ราคาอยู่ที่ 700 บาท จริงๆ ผมก็เล็งๆ ไว้ตั้งแต่ตอนที่พบว่า Maxpedition ไม่ค่อยมีขายในไทย (อย่างมากก็กระเป๋า ไม่ค่อยมี pouch ขายเท่าไหร่) หรือพวก 5.11 ก็ดูตำร๊วจตำรวจ (ก็สีออกจะดำดอทคอมซะขนาดนั้น) แถมเล็กอีกต่างหาก
So today I got a Hazard 4 big-koala Smart Phone Pouch from a shop down at The Old Siam Plaza. It was 700 Baht, and I was really looking at this as the Maxpedition is not widely sold in Thailand, and 5.11’s are too small and look “too policey” due to their black color.

ก่อนอื่น ขอแจ้งให้ทราบว่าภาพทั้งหมดในโพสนี้จะเป็น CC-BY-NC-SA 3.0 ไม่ใช่แบบปกติที่เราทำ เพราะผมไม่อยากให้มีใครเอาไปใช้ในกระทู้ขายของตามเว็บต่างๆ นอกจากนี้ผมขอบังคับว่าห้ามลบลายน้ำ (อย่างเป็นทางการ) เนื่องจากผมต้องการให้ท่านอ้างอิงที่มาตามเงื่อนไข BY ด้วยลายน้ำ (และด้วยลายน้ำเท่านั้น) ผมจะไม่พูดซ้ำสำหรับการรีวิวหรือขายสินค้าอื่นๆ ดังนั้นขอให้อ่านต่อไปได้เลยครับ
First up, let me be clear: This is a commercial product post. All images are CC-BY-NC-SA 3.0, not the usual rules. This is to prevent my images from being listed in catalogs and “customer testimonies” et cetera. I also explicitly require that the watermark is left intact: the BY clause allows me to specify how attribution is done, and the watermark is the only attribution required and acceptable in this case. I will not say this paragraph again for future products, so please enjoy the rest of the entry!


ตอนผมซื้อมามันก็ไม่มีซองหรืออะไรใส่มาครับ ที่ร้านก็วางไว้ในตู้เฉยๆ เลย ถ้าใครไปร้านจะเห็นว่ามันเล็กมากเมื่อเทียบกับของอื่นๆ เหมือนกัน ด้านหน้าของเจ้านี่จะมีตรา Hazard 4 เป็นยางนูนที่แกะออกไม่ได้เป็นสำคัญ
There was no package with this product; the shop just kept the thing in a locked cabinet. It’s a small product when compared to those bags, really. The front features a non-removable Hazard 4 3D logo, their trademark and distinctive design.

ทั้งนี้ หากต้องการเทียบสี ขอให้เทียบกับภาพนี้และภาพต่อไปเป็นหลัก ภาพอื่นๆ สีค่อนข้างจะเพี้ยนตอนแก้แสงครับ
If you are looking for color reference, please use this and the next pictures only. The rest varies a lot during the exposure correction process.


ด้านหลังเป็นจุดยึดแบบ MOLLE ที่ค่อนข้างจะแตกต่างจาก MOLLE ปกติ และพวก ALICE clip สมัยเรียน รด. สำหรับแบบที่ใส่มาให้นี้จะใช้แป๊กติดแล้วร้อยเข็มขัดได้ด้วยครับ อย่างไรก็ตาม ตัวสายยึดเองไม่สามารถถอดออกได้
The back is a MOLLE-compatible attachment point, which seems to be different from normal MOLLE, and the ALICE clips I used during my ROTC years. This design allows it to be worn on a belt as well. The attachment string however is not removable, like 5.11 SlickSticks and opposed to Maxpedition Tacties.


ถ้าจะใส่กับเข็มขัด ก็แกะแป๊ก (ขอเรียกแบบนี้ก็แล้วกัน) ออกมา ร้อยเข็มขัด แล้วเอาแป๊กติดกลับลงไป ง่ายๆ ได้ใจความ
You can simply open the tacks (what are those buttons called?) and insert a belt in, then close it back. This design is simple yet effective.


ถ้าจะติดกับ MOLLE PALS ก็ต้องดึงสายยึดออกมาซะก่อน
If you want to attach it to a MOLLE-style PALS webbing however you have to pull the strings out.


ดึงจนออกมาข้างบนเลย ซึ่งข้างบนจะมี d-ring สองอันสำหรับห้อย pouch นี้จากอย่างอื่นได้ด้วย ถ้าต้องการ
Pull it all the way back to the top. The top features two d-rings side-by-side, which can be used to hang the big-koala off something else.


Pouch นี้มีช่องเดียวเท่านั้น ติดด้วยตีนตุ๊กแก เวลาแกะจะเสียงดังมาก เพราะฉะนั้นถ้าไม่ชอบเสียงดังก็เอาตีนตุ๊กแกมาปิดไว้ จะได้ลดพื้นที่สัมผัสลง
The main and only compartment is closed shut by a large hook-and-loop pair. It produces a very loud noise when operated, so I think you should put some hook tape on the loop field to reduce the contact area if you need silence.


ด้านในจะเป็นผ้าอ่อนแบบชามัวร์ ปกป้องมือถือที่คุณรักได้เป็นอย่างดี
The inside is padded with a chamois-like fabric, protecting your beloved smartphone.


Pouch นี้สามารถใส่ Samsung Galaxy SII ที่ใส่ case ของ Baseus ได้สบายๆ นอกจากนี้ถ้าพยายามยัดๆ หน่อยก็ใส่ Galaxy Note ได้ด้วย ส่วนเรื่อง iPhone ผมไม่แน่ใจว่าจะใส่ iPhone 5 ที่ยาวขึ้นมาได้มั้ย
It fits a Samsung Galaxy SII with a Baseus case nicely. Not pictured, it will also fit a Galaxy Note with a stretch. I think iPhones will work, but not sure if the longer length of iPhone 5 will obsolete the fact.


ยางยืดด้านข้างแทบจะไม่ยืดออกมาเลย สมัยนี้ฝรั่งชอบออกแบบกระเป๋าสตางค์ที่เป็นทรงยางยืดซะเยอะ ผมก็เลยไม่ชอบ เพราะผมไม่ค่อยไว้ใจยางยืดเท่าไหร่ แต่เนื่องจากอันนี้แทบไม่ยืดเลย ผมเลยมั่นใจขึ้นมาบ้างว่ายางยืดจะไม่เสื่อมเร็ว จากตรงนี้ก็จะเห็นตราของ Cordura ที่เป็นยี่ห้อผ้าด้วย
The elastic sides don’t even have to take any effort. There are many recent wallet designs that use elastic bands; I rejected all of them. I simply don’t trust elastics. This one however almost doesn’t use any, so I can use it without fearing the elastics will wear out. The Cordura mark is also visible in this picture.


In my hand, showing the side.


And another side.


การติดเข้ากับ PALS ของ Hazard 4 tonto mini-messenger (ที่พวก EDC ฝรั่งชอบหยอกว่าเป็น “กระเป๋าสตุ้ง” แต่ผมก็ใช้ เพราะผมไม่ได้ตัวใหญ่เหมือนพวกมัน จะได้ไปใช้กระเป๋าใหญ่ๆ ได้ 555+)
Putting it on a PALS webbing to attach it to the Hazard 4 tonto mini-messenger , affectionately called “the manpurse” by some EDC folks. It proves to not be the manpurse for me and other Asians however.


ตัวแป๊กเป็นความยากลำบากของชีวิตมากๆ ถ้ามันยากก็ต้องถอด d-ring เก็บไว้ เวลาจะติดก็ดึงสายยึดลงมาให้สุดก่อนแล้วค่อยย้อนกลับขึ้นไปติดแป๊กอีกที
The tacks will make attachment difficult. If you find it so, you should remove the d-rings and pull the attachment string down all the way when you finish with the weave and about to come back up to snap the tacks together.


Floating with the main pack.


และลองปิดฝากระเป๋าใหญ่ดู แค่นี้เราก็พร้อมเที่ยวแล้ว!
And finally with the tonto’s front flap down with my phone still inside, ready for use.

ความเห็น / Opinions

การออกแบบง่ายและชัดเจน ใส่มือถือแล้วก็ใส่ปากกาได้อีกโดยจับยัดไว้ระหว่าง elastic (มันมีสองชั้น) ด้านในมีการบุจึงทำให้มือถือไม่ขูดกับเนื้อ Cordura โดยตรง
This design is simple and solid. It just stores my phone and optionally a couple of pens on via double elastic bands on either side. The inside is padded so the phone will not touch the Cordura fabric directly.

อย่างไรก็ตาม Hazard 4 ยังพัฒนาได้โดยการออกแบบที่ไม่ใช้แป๊กสำหรับคนที่ไม่ได้จะใช้กับเข็มขัด เพราะมันติดเข้าไปยากมากๆ และแกะยากกว่าจนถึงขั้นต้องเอากรรไกรมางัดออก อย่างน้อยก็ช่วยทำให้เราดึงสายยึดออกได้หน่อยเถอะ แล้วก็ช่วยเพิ่มวิธีติดที่ไม่ใช้แป๊ก ไม่งั้นก็ให้เราใช้ Maxpedition Tacties หรือ BLACKHAWK! Speed Clips ซะก็ได้ (อย่างไรก็ตาม สองยี่ห้อที่พูดถึงมีแต่ความยาวเลขคี่ จึงไม่เหมาะที่จะใช้กับ big-koala ที่มีความสูงสี่ช่อง)
Hazard 4 however could improve by using attachment designs that do not depend on tacks (for non-belt users), because it poses a big hell when I try to snap them back. To snap them out is an even harder task, as I had to stick a pair of scissors in and pry them off. At least, make your entire attachment string removable along with the d-ring, and either include a non-tack method, or just push us to buy Maxpedition Tacties or BLACKHAWK! Speed Clips. (Note, however, that this big-koala uses 4 rows of PALS, while Tacties and Speed Clips need to be 5 inches because they are offered in odd lengths only)

แต่สุดท้ายมันก็เข้ากับกระเป๋าหลักได้ดี และน่าจะใช้งานได้ดีมากในอนาคต ตัวผ้า Cordura ก็ทนมาก ในขณะที่ผ้าบุด้านในก็ปกป้องไม่ให้มีรอยขีดข่วน ผมไม่สามารถให้เรตติ้งใดๆ ได้ แต่ขอจัด pouch ตัวนี้ว่า “ดีมาก” ในสายตาผมครับ
In the end however, it fits well to the main pack and will serve me well in years to come. The Cordura fabric is very durable, while the inner linings will save my phone from scratches. I do not have a thumbs-ups to give, but the product is considered very good in my opinion.

Happy New Year 2013

The LunaticNeko Blog wishes you a prosperous year!

เรามีประเพณีหลวมๆ กับ Ditdin ที่จะร่วมกันทำการ์ดปีใหม่ทุกปี กลอนปีนี้จะเป็นไฮกุสั้นๆ เนื่องจากกลอนแปดยาวถูกหักลบด้วยปริมาณโปรเจคจบครับ
We have a loose tradition with Ditdin to collaborate on a public new year’s card every year. Here is our new year Haiku, the result of an expected poem minus project in progress.

English Translation:
No such poetry this year;
please bear with our Haiku: project late.
We love you, readers dear.

We meet next year, here.
May you achieve all that you imagine.
Have a happy new year!

สำหรับเพลงประจำปีนี้ของบล็อกเราจะเป็น “ไชโยปีใหม่” ของสุนทราภรณ์ ซึ่งเป็นวงดนตรีที่ได้รับการยอมรับกันโดยทั่วไปครับ
This blog’s new year’s song is Chai-Yo Pe-Mai (Hooray, new year!) by Suntaraporn, a classic band which composed more than a thousand songs.

เราผ่านวันโลกาวินาศมาได้โดยไม่มีอะไรเกิดขึ้น ขอให้นี่เป็นบทเรียนว่าเราจะไม่ถือเอาเรื่องไร้สาระมาคิดจนเกินเหตุ ก่อนจากกันไปในคืนนี้ ขอให้ บันดาลให้ปีนี้เป็นปีที่ดีสำหรับเราทุกคน สวัสดีปีใหม่ครับ
We passed the Apocalypse day without anything happening whatsoever. Let this be a lesson to not take things seriously when they are really not. Again, may grant us a good year! HAPPY NEW YEAR!

C: One more reason why you must bracket one-line statement blocks

Because this code is bugged, of course.

Scenario: This piece of code determines if the cost of current permutation is the best one. If so, it sets the “new low” as the best cost possible. Otherwise, it will print a debug. Finally, the program will calculate next permutation and continue.

 //CODE 1
//#define DEBUG

if(this_cost < best_cost){
  best_cost = this_cost;
} else
  #ifdef DEBUG

It has two different meanings entirely with and without DEBUG defined. This is what gcc understands if DEBUG is defined:

 //CODE 1.1
if(this_cost < best_cost){
  best_cost = this_cost;
} else
// This code is correct 

And this case, not:

 //CODE 1.2
if(this_cost < best_cost){
  best_cost = this_cost;
} else
// This code is wrong 

The best way to avoid this problem is to bracketize every block statement, even one-liners like this case. This code would be more readable without affecting performance:

 //CODE 2
//#define DEBUG

if(this_cost < best_cost){
  best_cost = this_cost;
} else {
  #ifdef DEBUG

Just a pair of braces stopped the damn bug. How could I be so careless?!

Barcamp Bangkhen #3

TO SPEAKERS: If I have FACTUAL ERRORS or OFFENSIVE MATERIALS within this entry, please contact me ASAP. I will remove (or correct, at your discretion) them at the first opportunity.

กลับมาอีกครั้งสำหรับบารแคมป์บางเขน การ(อ)สัมมนานอกกรอบที่ทุกคนจะได้แลกเปลี่ยนเรียนรู้ซึ่งกันและกันอย่างเสรี แถมเสื้อฟรีให้เอาไปใส่ได้ไม่ซ้ำใครด้วยละเอ้อ!! ครั้งนี้ผมก็ไปเข้าร่วมมาด้วย และมี session น่าสนใจเยอะแยะเลยครับ มาอ่านกันว่าผมไปเข้าห้องไหนมาบ้าง!
Here we come! The third Barcamp Bangkhen, the very great unconference where people will meet and exchange, and get FREE SHIRT while we’re at it! I joined this time as well, and there are loads of great sessions! Let’s see which rooms I joined.

(หมายเหตุ ที่เรียกว่าห้อง “เด็กD” ผมจะใช้คำกลางๆ ในที่นี้ว่า “Auditorium” นะครับ // “Auditorium” will be used to refer to the “DekD” room )

Session 2 Auditorium: ทำไงให้เว็ปเร็ว ตอน เว็ปช้ามากเบยยย (Make web faster)

โดย/by @vinboxx / Download Slide

การทำเว็บให้เร็วด้วยเทคนิคต่างๆ เช่น minification, caching, การทำงานกับ query string และ unique file name, การใช้ content delivery network เช่น CloudFlare เพื่อทำให้เว็บเราเร็วขึ้น โดยเราสามารถเลือกการใช้ content delivery ของเราได้ นำเสนอฟีเจอร์ต่างๆ ว่ามีอะไรบ้าง (ผู้เขียนคิดว่า CloudFlare ก็น่าสนใจดีนะ ^ ^)
Web acceleration using techniques like minification, caching, minding query string and unique file name, using CDNs like CloudFlare to accelerate website and its customization. Features of CloudFlare are also explored.

ต่อมาก็พูดเรื่องเครื่องมือหรือ tool ต่างๆ เพื่อช่วยในการพัฒนาเว็บที่เร็วขึ้นได้ เช่น ใช้ PageSpeed Tools หรือ pingdom วิเคราะห์เวลาในการโหลดเว็บ หรือใช้ WebPagetest เพื่อวิเคราะห์เว็บอย่างละเอียดก็ได้ ว่า optimization สามารถทำให้เร็วขึ้นได้มากขนาดไหน อย่างไรบ้าง
Then the speaker talked about tools that can be used to aid web acceleration like Google PageSpeed Tools, pingdom, or WebPagetest to analyze website for possible optimizations. (i.e. where we went wrong and made the site slow)

Session 3 Auditorium: Google Student Ambassador

โดย/by GSA Thailand

แนะนำ GSA, ทริปสิงคโปร์และกิจกรรมต่างๆ แจกของ งานและหน้าที่ของ GSA
Introduction to GSA, the Singapore trip, and SWAG!


  1. ส่งแบบฟอร์มออนไลน์
  2. สัมภาษณ์กับ Google มีการสอบข้อมูลทั่วไปเกี่ยวกับบริษัทในรอบเช้า และการสัมภาษณ์ในรอบบ่าย โดยใช้การสุ่มตอบคำถามที่กำหนดไว้ เน้นการตอบคำถามมากกว่าตัวคำตอบ
  3. รอ 2 เดือน ประกาศผล ให้ส่งเอกสารต่างๆ เพิ่มเติม

Application Procedures

  1. Online form submission
  2. Interview with Google consisting of “examination” and “interview”. Decision is made more on presentation and delivery than the answer itself
  3. Results are announced after two months. Qualified individuals will be required to submit additional documents.

การเป็น Ambassador จะมีอายุงาน 1 ปี
Ambassadors will remain in position for one year.


  • ต้องจัดกิจกรรมประชาสัมพันธ์ปีละ 5-8 กิจกรรม ตามที่เราเห็นสมควร โดยจะมีของแจกจาก Google
  • เป็นช่องทางการสื่อสารระหว่างมหาวิทยาลัยกับ Google

Roles and duties

  • Hold 5-8 PR events per year at their discretion. Google supplies swag.
  • To be a channel of communication between the university and Google


  • ผู้ก่อตั้ง Google = ไม่รู้ก็…
  • ผู้ก่อตั้ง Gmail = Paul Buchheit
  • Google ซื้อ Android ปีใด = 2005
  • Google ประเทศไทย ตั้งอยู่ที่ใด = CentralWorld ชั้น …
  • อะไรคือผลิตภัณฑ์ของ Google ที่บ่งบอกความเป็นตัวคุณ = iGoogle

Example Questions from examination round

  • Google founder = (you know ’em!)
  • Gmail founder = Paul Buchheit
  • The year which Google acquired Android = 2005
  • Where is the Google Thailand office = Somewhere in CentralWorld
  • Which Google product defines ‘you’? = iGoogle

Session 4 17304: Ruby on Rails

โดย/by Zack Siri / @artellectual

การพัฒนาเว็บด้วย Ruby on Rails การสร้างฐานข้อมูล platform ต่างๆ ที่เกี่ยวข้อง ฯลฯ Rails เป็น platform แบบ MVC (Model-View-Controller)
Web development using Ruby on Rails, database creation, platforms, etc. Rails is an MVC platform.

การสร้าง Controller จะมี convention ที่ชัดเจน คือเป็นกฎที่ชัดเจน เพื่อให้เราทำตามได้โดยง่าย โดยเราจะสร้าง Controller เองหรือจะให้ Rails ทำให้ก็ได้
Rails has specific conventions that must be followed. Controllers can be written manually or can be automatically created. Either way, they must follow the Rails conventions.

จากนั้นจะเป็นการสร้าง View ซึ่งจะบอกว่า controller นั้นจะแสดงผลออกมาอย่างไร โดย view จะต้องมีชื่อตรงกับ controller (ตรงนี้เป็น convention หนึ่งของ Rails) ทำให้การทำงานก็จะตรงไปตรงมามากขึ้น โดยเราสามารถที่จะใช้ helper method เพื่อให้เขียนเว็บได้ง่ายและเร็วขึ้นด้วยก็ได้ สำหรับตัวอย่างของ session นี้คือการสร้างเว็บฟอร์มง่ายๆ เก็บและแสดงข้อมูลได้
After creating model and controller it’s time for view. In Rails, view must have same name as controller. Helper methods can be employed for ease and speed. This session demonstrates simple case of web form creation that can collect and display data.

โดยสรุป ผู้เขียนก็ไม่ค่อยเข้าใจเท่าไหร่เหมือนเดิม เพราะไม่ค่อยคุ้นเคยกับ Ruby หรือ Rails ตั้งแต่แรก
I still don’t understand Rails much due to unfamiliarity with Ruby itself. Actually, I’m a bit familiar with Ruby, but I can’t figure out how to make websites out of them.

Session 5 17302: Methods of Payment: How we waste money on the Internet

โดย/by LunaticNeko / Download Slide

อธิบายองค์ประกอบที่จะนำไปสู่การใช้เงิน 5 ประการ (Product, Want, Money, Can Pay, Delivery) วิธีการคำนวณหาเงินที่ต้องจ่ายจริงจากราคาสินค้า ค่าส่ง อากรนำเข้า และภาษีมูลค่าเพิ่ม จากนั้นอธิบายถึงการจำหน่ายสินค้าแบบดิจิตอลและสินค้าเสมือน (digital and virtual goods) หนทางการหาเงินของเกมบน Facebook ว่ามาจาก 3 ทางหลัก ได้แก่โฆษณา โฆษณาแฝง และการจำหน่ายสินค้าเสมือนให้ผู้เล่น ต่อด้วยการแนะนำ Kickstarter ว่าเป็นแหล่งที่มาของธุรกิจที่จะนำเงินออกจากกระเป๋าเราด้วยนวัตกรรมต่างๆ มากมายในอนาคต
Describes the five components of spending (Product, Want, Money, Can Pay, Delivery), method to calculate how much one must really pay after shipping, import tariff, and VAT; describes digital and virtual goods sales. Facebook games earn money from three ways: advertisement, product placement, and virtual goods sales. Kickstarter is described as source of new businesses and innovations that can bring money out of our pockets.

ในส่วนต่อมา อธิบายการนำเงินออกจากกระเป๋าโดยใช้บัตรเครดิต หากไม่มีก็เป็นการสร้างบัตรเดบิตออนไลน์ผ่านบริการของธนาคาร หากไม่มีก็ใช้ช่องทางอื่นๆ เช่นบัตรเติมเงินของบริการต่างๆ หากไม่มีเงินจริงๆ ก็สามารถทำแบบสอบถามเพื่อแลกกับสินค้าเสมือนได้ ดังนั้น จะเห็นว่า แม้ว่าเราจะไม่มีเงิน ผู้ให้บริการก็ยังสามารถนำเงินออกจากกระเป๋าของเราได้อยู่ดี
In the next part, the presenter describes how to pay using credit cards, or debit if one does not have credit, or other payment methods like cash cards. If they really have no money, they can do surveys to earn virtual goods. This is summarized as “even if we don’t have money, they can still take it from us.”

ดังที่กล่าวไว้แล้วถึงองค์ประกอบการใช้เงิน 5 ประการ เราสามารถตัดองค์ประกอบตัวใดตัวหนึ่งเพื่อตัดการใช้จ่ายของเราได้ ทางที่ง่ายที่สุดคือใช้การควบคุมตนเองเข้ามาตัดความต้องการ (Want) ทิ้งไป โดยให้หลีกเลี่ยงการซื้อในขณะที่ความสามารถในการตัดสินใจลดลง การป้องกันไม่ให้ซื้อสินค้าในขณะที่ความสามารถในการตัดสินใจลดลง การปรับทัศนคติที่มีต่อสินค้าที่ล่อตาล่อใจ และสุดท้ายคือการลดละความต้องการทางโลก
As described earlier, if one of the five components of spending is eliminated, spending will not happen. The easiest way is to eliminate the Want by 1) avoid purchasing with impaired judgement, 2) prevent purchasing with impaired judgement, 3) change of initial attitude towards attractive items, and 4) reduce earthly desires.

จากนั้นผมก็แทบจะกลับบ้านทันทีครับ เพราะการบ้านเยอะ และมีงานต้องทำอีกหลายอย่างด้วย เช่นการอัพบล็อกนี้เป็นต้น
Then I left for home almost immediately due to many things to do, including homework and blogging.

บทสรุป / Conclusion

ขอขอบพระคุณ คณาจารย์ผู้รับผิดชอบกิจกรรม คณะวิศวกรรมศาสตร์ ผู้สนับสนุนทั้งหลาย ผู้ที่เข้าฟังการบรรยายของผม ตลอดจนวิทยากรทุกท่านที่ร่วมงานในครั้งนี้ และขอขอบคุณ น้องๆ ปี 2-3 ที่ช่วยกันจัดงานนี้เป็นอย่างดีครับ ปีนี้ผมคิดว่างานประสบความสำเร็จดีมากในแง่จำนวนคน แต่ยังมีข้อจำกัดเรื่องจำนวน “เซสชั่นเกรดเอบวก” ที่ยังมีน้อยเกินไป ทำให้ Auditorium ยังเป็นที่ของวิทยากรหน้าเดิมเช่นเคย
I hereby thank the faculty, the Faculty, sponsors, my audience, and all speakers who participated today. I also thank the Juniors and Sophomores who organized this as well. I think this year is quite good in terms of participation, but there’s still a lack of “A+ sessions” which results in the Auditorium still held down by the same old speakers.

แล้วพบกันใหม่ที่บาร์แคมป์ที่ไหนอีกซักแห่งครับ สวัสดี
See you again in the next Barcamp … somewhere! KTHXBAI!

อ้อ ขอบคุณ GSA Thailand สำหรับ Swag ด้วยครับ แต่ผมก็ยังไม่รู้ว่าจะเอามันเข้ามาใช้ในชีวิตประจำวันยังไง ขอใช้ขวดเก่าไปพลางๆ ก่อนนะครับ
Before I go, thanks GSA Thailand for the Swag. I still don’t know how to use this bottle so I’ll use the old one for a while. Thanks again!