Recent Updates Toggle Comment Threads | Keyboard Shortcuts

  • Victor 10:47 pm on July 6, 2018 Permalink | Reply  

    Blur detector 

    Many people (me included) prefer to take duplicate photos out of fear that some of them may be blurry, and choosing among these duplicate photos takes considerable time afterwards. This problem stems from the fact that, even though smarphones today do a great job of avoiding blurry shots, they do not tell the user when a blurry shot is taken. In this case, a software feature that warns the user to take another shot when the previous one was blurry would save a lot of time. I’m honestly surprised that this feature is not on any major phone yet, considering how easy blur detection is to implement. Looking forward to this feature showing up on the phone of an aggressive brand, say, OnePlus.

  • Victor 11:05 pm on July 4, 2018 Permalink | Reply  

    Reviewing the websites of universities 


    Upon looking at the websites of various universities, I was amazed by how different they are to each other, and how the website of each university was closely entangled with its culture. Therefore, I wrote this document to give my two cents on the websites I’ve seen so far.


    The overall score of each website seeks to give an accurate general impression of how good it is, primarily from the perspective of applicants. As such, the score is given holistically, (yes, if universities review me holistically, I’m happy to return the favor 🙂 ) mainly based on the following 3 factors, ranked by importance: functionality, style, and refinement.

    Functionality: how easy is it to find key information, such as EA/Regular deadlines, super-scoring policy, campus visit registration, and admissions platform?

    Style: is the website pleasing to look at? Does it create a unique feel and atmosphere?

    Refinement: do the details reflect that careful thought and design was put into the website?

    Bring it on!


    Overall score: 1.5/5

    CMU’s primary website is a decent mix between function and style, but the dedicated undergraduate admissions sub-site is such a train wreck that any good score is instantly rendered impossible. itself is a fine if not exceptional website, offering users with a stylish but not obnoxious UI, an admirable amount of useful information, and even a unique “browser” sidebar that makes navigation a little easier. Add a dreaded “admission.enrollment.” at the front of the url, though, the site seemingly morphs from a classy, reasonable receptionist into a thuggish teenager that hasn’t figured out what he wants to be yet.

    Each page on the admissions site is dominated by an over-sized navbar and much visual clutter, and the information that does make it to the screen is displayed in unreasonably large print for more than 90% of the screen width, which is incredibly inconvenient to read. (Analyzing the HTML shows that the width is in fact not defined at all; the text spans across the entire screen except for narrow paddings on the sides) The visual elements on the website are some of the most sharp and modern I’ve ever seen on an university website, but the design of these are far too generic: the visual elements are not styled to fit the university, and would make perfect sense decorating, say, the website of a tech company. The fact that CMU is known for its Scottish heritage makes the design all the more unforgivable: why was there not even a speck of tartan on the website? It almost appears as though the sub-site was constructed without the oversight of a chief designer, leading to a design lacking in direction and cohesion.


    Overall score: 5/5

    Fantastic! In an age when nearly all universities go out of their way to stuff their websites with over-sized images and ivy-reminiscent descriptions, the engineering giant reminds users what a clean, fresh, and functional site can accomplish.

    Since MIT is our highest scorer here, I’m going to spend a bit more time detailing the review.

    Venturing onto, the site that pops up may seem a little messy at first, but after using the interface for a while, one will start to appreciate how easy it is to access crucial information.

    To start with, the site has a very logical top-down organization, with each page containing an overview of the topic it covers and logical, well organized links to sub-pages that explain things in greater detail. Sub-pages almost never go outside the context set by its ‘parent’ page and rarely overlap in information with each other, making accessing a piece of information straight-forward and simple. Also, there is virtually no advertising (by this I mean things like student/faculty ratio, student diversity, and how many majors are available……) to get in the way, because MIT is one of very few (if not the only) top schools with the consciousness to realize that it doesn’t need advertising (!!).

    The logical organization is further supplemented by the non-intrusive styling employed here. Screen-filling images that get in the way of navigation and information are all but gone, the site instead choosing to employ smaller, more user-friendly methods of decoration, such as the multi-colored ribbon on the top of admissions pages, vibrant colors on buttons, and smaller images scattered onto certain areas. The result is that navigation links and buttons are incredibly easy to access,

    As a whole, MIT’s website is coherent and well thought-out, the careful design work manifesting itself in many details (why is MIT the only school, to my knowledge, to offer a printable campus map on the campus visit page?! how come most other schools don’t give a chart with all notable admissions policies in one place?!). Avoiding fancy advertising and adopting a functional, no-nonsense style instead, MIT had firmly distinguished itself from its less established counterparts (and some equally established ones too!).


    Overall score: 2/5

    Unfortunately, this research powerhouse in the heart of silicon valley does not have a world-class website, disappointing with a bloated and dysfunctional mess. Whatever points the styling brings in is completely overshadowed by the painful experience the website gives its visitors.

    At first glance, Stanford appears to have done a nice job, as visitors are greeted with a buttery-smooth UI and many beautiful graphics. However, there is little to love about aside from what first meets the eye, as it’s organized so that it takes many many clicks, much scrolling, and a shocking number of tabs to gather any useful information. If the website is a dumpling, then it’s one of those that’s got the meat hidden behind a huge wall of boring flour, which is truly a shame, considering the website actually contains a terrific amount of useful content buried under advertising material. Browsing on the site is just like taking one hopeful bite after another and still not reaching the tasty stuff. Perhaps Stanford had determined that only the students patient enough to dig all the way through the packaging deserve to learn about the school? (Taps temple) Looks like the webmasters have some work to do……

  • Victor 12:12 am on June 24, 2018 Permalink | Reply  

    The near future: optimized materials 

    As we all know, optimizing the shape of a certain material can drastically improve its weight efficiency, and most performance-oriented designs extensively use these optimized materials. However, they are far from ubiquitous, as less performance-oriented structures such as buildings and infrastructure still use standard, non-optimized beams of all sorts.

    I think this could change in the near future, as optimized materials can become as standard and easy-to-use as standard, solid beams. Standard one-size-fits-all optimization patterns (such as removing triangles from the size of box beams) can be pre-fabricated onto construction materials, making these optimized materials as convenient and standardized as conventional materials.

    A major challenge would be the interference of optimization patterns with fittings: what if a user needs to put a rivet in a position that had been cut through for efficiency? Generally, for beams the fittings are on the ends, so pre-fabricated optimized beams can come in standard lengths, with optimization patterns stopping shy of the ends so fittings can be installed. Other types of materials, such as sheet metals, may be harder to pre-fabricate, but with today’s automation technology, it may very well be economical to let robots stamp custom optimization patterns for each user. For example, a user could specify where the material must be free of optimization, and the robot can stamp triangles out of the material everywhere else.

    With potentially rising material costs and more structures that demand good material performance, optimized materials has a good chance of being standardized and becoming ubiquitous, so let’s wait and see.

  • Victor 11:03 pm on June 9, 2018 Permalink | Reply  

    (Hybrid) 3D printed glasses has a great future 

    Glasses are great objects to make via 3D printing. They can benefit from customization, since glasses need to fit snugly. They also don’t have to be incredibly cheap since people generally wear them for quite a few years. However, current 3D printing technology does not really allow for high-quality glasses to be completely 3D printed, as this list shows. Despite being carefully styled, the monotonous and rough Nylon frames simply aren’t good enough for widespread distribution. Before 3D printing technology evolves to use materials that actually have a pleasing finish, then, glasses can be partially made with 3D printing to satisfy customization needs without sacrificing quality. Specifically, segments of the frame can be made with 3D printing, so that the frame can be sized to fit various faces, while the majority of the frame is still made with conventional materials. The connection between the 3D printed materials and the conventional materials can be difficult, but it is far from prohibitively hard to forge. Various water-proof adhesives can be used in conjunction with a puzzle-like fit to make for a strong connection. Let’s see whether these hybrid 3D printed glasses appear on a large scale in the future.

  • Victor 12:51 pm on May 28, 2018 Permalink | Reply  

    More individual perspectives on financial crises are needed 

    To find a good postmortem of a financial crisis is incredibly simple: there are so many well-made books and documentaries on these major events that it is hard to choose among them. Just to mention two of them, “The Big Short” presents a great chronological summary of how the great recession came to be, and “The Signal and The Noise” gives a good overview of what mistakes led to the recession.

    However, the great majority of these offer only a general summary of events, without a detailed and realistic individual perspective. That is to say, these summaries do not show what a relatively ordinary person heard, experienced, and felt during the unfolding of the crisis. The lack of such a perspective leaves many important questions unanswered: Was the warnings of the housing bubble rarely known, or did they pop up on the news all the time? Was there a clear, noticeable increase in the number of people trading stocks prior to the start of the crisis? In other words, these books do not describe what signs of the crisis was visible to ordinary individuals. This presents a problem to readers looking to learn how to spot the signs of possible problems in the financial system and take actions to minimize the possible damage, yet it is very likely that a large proportion of readers are looking to learn precisely this. I’ll certainly continue to look for publications that give a detailed individual perspective, and I may resort to searching for blog posts from individuals if I cannot find a suitable publication.

  • Victor 12:49 pm on May 22, 2018 Permalink | Reply  

    What is wrong with this piece of XML? 

    Mental challenge:

    Find out why the following XML portion fails to be parsed. Hint: it’s not a tag problem…… Scroll down for answer






    Answer: there are a pair of curly double quotes in the XML, because I copied the text from Google Docs, and a pair of curly double quotes came in.

    Man curly quotes and programmers just don’t belong together…… I spent ~20 minutes trying to figure out what went wrong, since the double quotes were really the last thing I suspected.

  • Victor 5:33 pm on May 19, 2018 Permalink | Reply  

    AAR – great course with great potential 

    The poster showcase yesterday marked the end of my Advanced Authentic Research (AAR) project, AAR being a research course at Gunn High School. Pairing each enrolling student with a mentor, AAR allows students a great deal of freedom to pursue an original research project, which culminates in a poster and a paper. My project was on Sketch Based Image Synthesis (more on that later), and I’m glad to say that everything worked out well at the poster showcase. Having went through the entire course, I find AAR to be a good introduction to the scientific research process, and representative of a type of course with a lot of potential for expansion.

    AAR does a good job of introducing to students the scientific research process. The course gives quite specific advice to students regarding each step of the process, from setting a problem statement to writing the research methodology and finishing off the poster. Typically, for each step of the process, the course gives a brief introduction of what the step is for, shows some examples of the step being executed effectively, lets students do some practice, and finally allows the student to carry out the step and add it to the project. In the case of the problem statement, the students were taught that the problem statement serves to identify the core contribution of the research, read some standard and effective problem statements, and finally wrote their own problem statements. This standard research process is rarely covered in this level of detail in high school science classes, and AAR presents an unique opportunity for high school students to get familiar with this ubiquitous process.

    Classes like AAR are primarily promising because the research experience provided to the students is better than DIY research, even in the case of students that have a lot of resources. Research necessarily needs guidance, and for a good deal of students no source of guidance outside of school is available, yet all students enrolling in AAR can receive advice from the teacher and a mentor, making AAR very attractive. The poster showcase is another opportunity exclusive to AAR students. Taking place in a large hall, the showcase allows each student to present his project to hundreds of guests in a formal manner, an experience not available to students conducting research on their own. Compared to DIY, AAR also provides a better simulation of later research that a student will conduct. Aspects such as selecting a suitable partner and building a good relationship with a mentor can be very tricky, and AAR allows students to gain experience in these aspects. Classes like AAR can be attractive to even the students with a lot of resources, and have a lot of potential for expansion.

    AAR does a good job of teaching the research process, and provides a research experience that is more realistic and valuable than any DIY research. Essentially, AAR takes the experience of a costly research summer camp, and offers it at no cost over the course of a year. Today, being able to effectively perform research is incredibly important, and AAR allows students to gain the necessary skills in a systematic and highly realistic manner.

  • Victor 7:45 pm on May 16, 2018 Permalink | Reply  

    Rapid argumentative writing disrupts logical discipline 

    Over the past few months I’ve become seriously impressed by the writing speeds of my fellow high school students. No more than a few minutes after the teacher orders a reflection on some topic that had just been covered, the average student’s fingers begin dancing swiftly on the Chromebook keyboard, and after 10 minutes or so, a page of 12-point, double spaced, brand new opinionated reflection will have formed on virtually every screen. Impressive as this feat may be, is the ability to rapidly write argumentative prose actually a good thing?

    Rapid argumentative writing had truly become a staple of modern schooling, and it is encouraging students to write with poor logical discipline. The ACT requires test takers to write essays with 400-500 words, complete with a thesis and supporting points, in a time period of less than an hour. Virtually every ACT veteran had learned that actually thinking about the topic amid the time crunch is a loser’s strategy: the test does not care about the depth or carefulness of the reasoning, and refining one’s thoughts before starting to write simply isn’t worth it. In other words, the test is only about organizing ideas into an essay that ostensibly makes sense. Many schools had integrated rapid reflections into their classes, regularly letting students work out a page of sensible writing within a very short amount of time. Again, the logical discipline behind the student’s reasoning is not graded, and the short time period strongly discourages the student from actually thinking about the topic with caution and care. To my knowledge, unsurprisingly, most students can’t be bothered to carefully reason about the topic before taking to Google Docs. The detrimental effects of these rapid writing sessions stretch far beyond the classroom itself, as bad logical discipline can quickly become a habit. I certainly found myself making illogical leaps in thought outside the classroom more often with the increase in rapid writing, and I wouldn’t be surprised if others are going through a similar process.

    Despite these adverse impacts, rapid writing itself is a crucial skill. Being able to clearly articulate an idea or fact clearly and in a short amount of time is necessary for efficiency in and outside of the workplace, and training students to possess this skill is certainly the right thing to do. However, rapid writing should mainly be about facts, established scenarios, and other content that do not involve much thought, instead of personal opinions that should be formed with a lot of careful reasoning. Essentially, education should seek to separate the thinking and the writing, making sure that the thinking is done with lots of time and care, while the writing is centered on simply conveying established facts with efficiency.

  • Victor 2:07 pm on May 12, 2018 Permalink | Reply  

    The next UI styling trend 

    The current trend in UI styling had been here since around 2010, and its prolonged presence had made UI designs incredibly homogenous. Every successful UI design today has minimalistic interfaces, simple but carefully designed 2D icons, and smooth transition animations. When a styling trend had existed for a decade and is become virtually ubiquitous, the next trend should be around the corner, and this time is no exception. The exact philosophies of the next trend are hard to predict, but it is reasonable to believe that the next trend will involve more stunning graphics and 3D elements.


    Windows 10: dark colors, no transparency, simplified system logos, and transitional animations


    Windows 7: transparency, more complex logos, not many animations

    The ubiquitous nature of the current trend isn’t hard to verify, as elements of it can be identified in nearly every major UI. Microsoft Windows certainly had made such a change, moving from the translucent interfaces and elaborate graphics of Windows 7 to the simplified 2D graphics, hushed tones, and smooth animations of Windows 10. MacOS had taken a similar move, simplifying application logos across the board and further refining interfaces. Major applications have also followed the trend. The recent Mozilla Firefox update that moved the UI in a more sharply defined and minimalistic direction is a great example. On the Internet, every single major website had implemented simplified 2D interfaces while extensively employing transition animations.


    The websites of today: minimalistic, refined interfaces and many animations

    Aside from the fact that the current trend had been here for too long, the drastic technological advances in the past decade also make the introduction of a brand new styling trend in the near future inevitable. Advanced development platforms have made designing interfaces much easier. Bootstrap, for example, contains so many standard graphics, textures, and website elements that an experienced designer can put together a decent-looking website in an incredibly short time. The advent of widespread JavaScript and PHP use certainly help designers as well. Electronics have moved on so much that even integrated graphics today can handle very complex tasks, and the current minimalistic, 2D UIs are certainly under-utilizing today’s computer hardware. Increased Internet speeds makes much more exciting website UIs possible. Technology advances have opened a colossal gap between the UI that is possible and the UI that is here today, and that gap will inevitably be filled.

    The next styling trend will likely involve more complex graphics and 3D elements. We know from history that the next styling trend typically is typically a reversal of the previous: the blocky designs of the 1980s made way for the rounded figures of the 1990s; the relatively dull colors of the 1990s were washed away by the bright, pure colors we use today, and so on. Judging by how minimalistic and 2D-dominated today’s UIs are, tomorrow’s designs should logically contain elaborate graphics and 3D elements. Of course, the aforementioned technological advances will play a role too, as they have made complex graphics and 3D elements are now more viable than ever before.

    The exact philosophies and introduction of the next styling trend are hard to predict. Complex graphics and 3D elements are still hard to implement on a large scale, and increased hardware use will certainly have consequences, so the introduction might be relatively gradual, so that the engineering involved can be performed in a relatively long period of time. However, it is as always extremely important to recognize the first signs of a trend revolution taking place, as every major change is an opportunity for some companies to definitely pull ahead of others, setting the tone for the decade to come.

  • Victor 12:35 am on May 10, 2018 Permalink | Reply  

    Brief affair with PHP – used but not understood 

    So as the rookie webmaster of my robotics team (that’s Gunn Robotics, FRC 192) I was tasked with creating a registration site for the summer camp. The site needed to go online quickly, so out of AP reviews I managed to pick out an entire Sunday to rush this job. With very little website building experience to start with, I installed Apache for local debugging, got a complete PHP form-validation script working, and managed to sprinkle in a bit of Bootstrap for some basic elegance. Everything got done on that Sunday, which was quite nice, but to be honest the process simply wasn’t as enjoyable as, say, doing algorithmic work, thanks to the hurried interaction with very high level languages and tools.


    Finished page, after successfully registering

    The site building experience with PHP was bland to say the least. As I did not really have the time to seriously learn deep into PHP (I believe non-professional webmasters commonly do not have that luxury), all of my problems were solved by referring to Stack Overflow, which gave answers that contained incredibly high-level functionalities that were like black boxes. As an example, the most crucial part of the site – displaying error messages onto already existing html – involved letting the script run itself from the start again, or whatever this line does.

    Mystery line

    Of course, this line was given by a kind person on Stack Overflow, and left me with many, many questions, which I did not have time to explore. I certainly understood that line allowed the form data to be passed to this PHP script itself in some way, but the exact mechanics of how this works is not known and does not need to be known. When I hit another problem, I searched it up and got another (perfect) answer that I didn’t exactly understand. What all of this comes down to is that, the website building process was essentially:

    Write -> hit problems -> search -> make decision -> implement …[repeat]… -> it works!!!!

    This blandness is certainly not unique to PHP, and is common to many high level languages and tools. Brief, rushed interactions with very high level languages takes the fizz away from programming. There’s no longer the feeling you are in control, you know what’s going on, and you create through elaborate, skilled reasoning. The upside is that high level tools are ultimately easy to use and time-saving, so interactions with them can be really short if necessary. For me, this means that when I work on the website I can focus more on thinking through the design, and I’ll be certain to try and create something original and unique with the time saved.

Compose new post
Next post/Next comment
Previous post/Previous comment
Show/Hide comments
Go to top
Go to login
Show/Hide help
shift + esc