Tuesday, September 30, 2014

Published 11:31 PM by Phuc Nguyen with 0 comment

How To Turn On HandOff Feature in iOS 8 and OS X Yosemite

The handoff feature was introduced at Apple World Wide Developer Conference back in June 2014. It allows iOS devices such as iPhone and iPad running iOS 8 to work seamlessly with a Mac running OS X Yosemite.

For example, you can start writing an email on your phone and finish it off on your Mac. The same goes vice versa. This feature includes Mail, Safari, Pages, Keynote, Numbers... all of Apple apps frankly.

However, this feature is not automatically turned on. If you find yourself wondering why the heck it is not working. Here is how you do to turn this feature on.

For iOS devices, go to Setting --> General --> Handoff... --> Turn on Handoff






For Mac, go to Setting --> General --> Turn on Handoff (near the end)
Read More
       edit

Monday, September 29, 2014

Published 11:14 PM by Phuc Nguyen with 0 comment

Intellij Products Free for Students


Congrats new and old students of computer programming. Jetbrains has announced on its website that all of its products including notably Intellij IDEA (Java) and AppCode (Objective-C) and others are free for students.

If you have your school email address or ISIC card, apply right now to receive all of their products for free. You will get a license which is valid for one year. After that, you will need to reapply.

This is a very good deal since the Intellij IDEA is a fantastic product for Java programming. Besides Java, it can also do web development which supports many popular frameworks from Spring to Play to Vaadin. It also supports a lot of languages including Python, Ruby and so on.

Note: If you're not a student, it is not the end. Intellij does provide a community edition for its Intellij IDEA. Community edition means free so ... it turns out those students will get the ultimate edition of IDEA which supports Java EE.
Read More
       edit
Published 2:30 PM by Phuc Nguyen with 0 comment

iOS 8 Reset Can Erase Your iCloud Documents


According to Macrumors, using Reset all settings would result in all of your iCloud documents including Pages, Numbers, Preview documents and other kinds.

This happen when you go to Settings -> General -> Reset -> Reset all settings.
Even though the popover says "This will reset all settings. No data or media will be deleted", the phone system is going to erase your online documents. 

So to be safe, back up your documents using your Mac running OS X Yosemite. It is because only OS X Yosemite has the feature to access iCloud Drive directly. And that's how you can copy and paste all of your iCloud documents to a safe location.


Read More
       edit

Wednesday, September 10, 2014

Published 6:48 PM by Phuc Nguyen with 0 comment

Apple's New Era with Tim Cook

Yesterday, September 9th, Apple stunned the world again with a new product category, the Apple Watch. Accompanying with the watch was the release of iPhone 6, iPhone 6 Plus and the Apple Pay.

The event started quickly into the new iPhone and wasted no time to introduce Apple Pay, a new payment system on iPhone 6. Then Apple reserved almost 1 hour of the event to talk about Apple Watch. This stunning little device rekindles technology, art, and fashion into one personalized gadget.


So if we pay close attention to the way Apple was before and the way Apple is now, there are some significant changes:

  1. Product names are accompanied by Apple Logo.

  2. There seems not be called iDevices anymore. With Apple Logo, Apple brand starts to shine explicitly through each product.
  3. iPhone events and WWDC will be likely to happen every year from now on. WWDC happens in June and iPhone + iOS happen in September.
  4. There are more videos to explain the product and the process of making it.
  5. The rounded factor will become a main design thing for Apple devices. This design belongs to the design chief Jony Ive.
  6. Apple starts making ads in house. 
  7. Relentless hiring of talents across industries. Noticeably, the hiring of Burberry CEO, Angela Ahrendts.

Hopefully, more interesting things will come in the next year. With this September event, 2014 just marks a new key chapter in the Apple's story, or shall I say, Apple's post-Steve era.





Read More
       edit

Thursday, May 15, 2014

Published 10:36 PM by Phuc Nguyen with 1 comment

Great Tools for Computer Scientists

As a computer scientist, I have used many types of tools that help me program and study. They are text editors, an IDE, browser, debugging tools, social networking tools, and many more. I use each of the tools with a specific purpose. It seems impossible to obtain a one-size-fits-all tool. It is because a programming problem needs to be broken into smaller problems, which requires a computer scientist to combine different tools to find the solutions.

For example, in this semester, I worked with five other students for SJSU STEM Program. We took advantage of Google Docs to communicate and plan each sprint. We also used Google Hangouts and Skype to hold every meeting between team members and with students and teachers. These tools are free and work really well. In fact, thanks to Google Docs, we were able to put together the finest memos. The reason, Google Docs worked so well, is because it provided us real-time editing.


Besides Google products, our teams discovered Google Helpouts, which is a very promising tool for computer science students like us to help other people and get paid in the process. We did not have a chance to work with it but we would definitely like to explore it more in the future.


The other tools that we used were Adobe Photoshop and Prezi. Photoshop was used for our poster and it was just powerful. Prezi was new to us but the ability to animate slides and make them interesting really impressed us. We used Prezi, at the end of the project, to provide a presentation to our client. After the presentation, the client response was very positive. However, Prezi could be a lot more appealing to students if its group licenses were not that expensive.
 
At the end, Google Docs and Google Hangouts are my favorite tools. They are just easy to use and do the job well. Prezi seems potentials, but it price tags and complicated features make me less interested in using it for future projects.

Personally, another good tool for computer scientists is Linkedin. This is a great tool for networking. During the preparation for my Linkedin profile, I had to get familiar with business terms and learnt how to promote myself better.

I think computer tools are changing every year. People always strive to find new ways to do things. For my STEM project, we found out many cool tools for kids to learn programming. The website Code.org provides interesting and easy-to-learn education web apps. Code.org employs a new way of educating young students to learn code through game programming and simulated animation. Currently, it has a coding curriculum that teaches basic programming through video games like Angry Birds and hungry zombies. The web apps are just amazing and I think it makes students more interested in programming more than in learning a traditional programming language. (Richtel, 2014)

In short words, I would recommend these tools for every fellow computer science students:
1.     Google Docs: online real-time document processing apps.
2.     Google Hangouts/Skype: online group meeting.
3.     Prezi: online tool for making presentations cool.
4.     Photoshop: tool for graphic designs.
5.     Code.org: web apps for learning programming.
6.     Linkedin: professional networking for everyone.




References

Android Authority. (2013, May 15). Google Hangouts Logo. Retrieved from Android Authority's Google Plus: https://plus.google.com/+AndroidAuthority/posts/2U3F5MFhbZj

Appraps. (2013, April 18). Prezi App Review for Ipad. Retrieved from Appraps: http://appraps.com/blog/2013/04/18/prezi-app-review-for-ipad/

Code.org. (2014). Anybody Can Learn | Code.org. Retrieved May 15, 2014, from Code.org: http://www.code.org

HTC Inc. (n.d.). Google Calendar Docs. Retrieved May 15, 2014, from HTC Inc.: http://www.htcinc.net/google-calendar-docs/

Linkedin. (n.d.). Linkedin - Media Resources - Logos. Retrieved 05 15, 2014, from Linkedin: http://press.linkedin.com/Media-Resources?SubjectID=644

Richtel, M. (2014, May 10). Reading, Writing, Arithmetic, and Lately, Coding. Retrieved May 15, 2014, from The New York Times: http://www.nytimes.com/2014/05/11/us/reading-writing-arithmetic-and-lately-coding.html?_r=0

Shaw, A. (2013, 09 27). Skype Logo - Official Skype Logo. Retrieved 05 15, 2014, from
Skype Blogs: http://blogs.skype.com/?attachment_id=56273

Wikipedia. (n.d.). Photoshop CC icon. Retrieved 05 15, 2014, from Wikipedia: http://en.wikipedia.org/wiki/File:Photoshop_CC_icon.png



Read More
       edit

Saturday, May 10, 2014

Published 1:28 AM by Phuc Nguyen with 6 comments

Best IDEs for Java Programmers


As a programmer, there is no surprise in getting yourself the best IDE available in the market. IDE stands for Integrated Development Environment. In another words, it is where your code stays and works its magic. It is the utmost important tool before anything else that you should care about.

So what is IDE about? Most college students get used to a few basic IDEs that their schools provide. These IDEs perform some certain basic tasks such as letting you edit the code, providing code checking, debugging tools and compiling system. We could image a usual scenario in which the first ever program "Hello World" is created. You open your IDE, create a new project, create a code file (.java), enter your code, and finally click run. Your program magically appears on screen with the world "Hello World". Your job is done and now you can get rest. This sounds easy enough to believe that you don't actually need the IDE. Maybe a text editor would work just fine.
Eclipse IDE Interface


Now if you look at professional programmers at work, they always choose to use great IDEs, instead of a text editor. A great IDE can provide you code hinting and code completion. These tools help you put your thoughts into code faster and accurately. As years go by, Java APIs and others have extended their classes and methods way more that you can remember. Maybe you could remember the 10 most used classes and look for a class on the official Java documentation. However, doing that decreases your efficiency. An IDE can help you with that.

Intellij IDEA Smart Completion
If you want to test a simple class you just finish, an IDE can help you set up a testing unit of a particular language for that class. It also provides debugging tools that let you know which lines of code are wrong. These simple tasks seem easy in an IDE but takes a lot of time to set them up manually. This is where a great IDE is a must-have  for big companies which  prefer test-driven development.

Besides that, an IDE can provide asset organization which lets you arrange all kinds of assets inside a project. Some assets might be pictures, videos, and graphic arts. They also could be audios or external files such as private libraries and APIs. In summary, an IDE is like an Operating System for your project. Without it, you could barely function as programmer.

Intellij IDEA Code Checking


Now, for a Java programmer, there are many IDEs available in the market. Most notable IDEs are Eclipse, Netbeans, and Intellij IDEA. Netbeans is quite a nice IDE for beginners, but as you progress more into programming career, Netbeans is not powerful enough to handle big project and collaboration between teams. In this post, let's examine the two popular IDEs, Eclipse and Intellij IDEA.

I will make a simple table to show you the pros and cons between Eclipse and Intellij IDEA.

Eclipse  


Intellij IDEA  


Pros
Cons
Pros
Cons
Free
Community Edition is free Fully featured IDE is paid to use
Open source
Open source for community edition Proprietary source for Commercial edition
Extensive plug-ins and support for many languages beside Java
Extensive plug-ins and support for many languages beside Java
Fully support for Android development
Fully support for Android development. Currently the main IDE that Google choose for its coming official Android IDE
Code hinting
Code hinting and code completion

Single selection Multiple selections
Good debugging tools
Excellent debugging tools

Fragmented in terms of extensive support for web frameworks Great support for many web frameworks such as Angular JS, Grunt, Gradle and more.
Compile code fast

Slow code compilation

Slow typing Fast and smooth typing

Boring and monotonous theme Many choices for themes
Run on Windows, Mac, Linux/Unix
Run on Windows, Mac, Linux/Unix
Good for Start-ups
Good for Enterprise

Not reliable for enterprise frameworks Fully support for enterprise framework

Install version control tools manually Ready-to-use version control tools
Very good refactorings
Excellent refactorings


Well, if you need to dig deeper into each IDE, you could give them a try immediately. I would recommend Intellij IDEA since its code completion feature is way beyong any IDEs I have ever tried. But again, it is your choice to get used to Eclipse or Intellij IDEA.


References

Jetbrains. (n.d.). Intellij IDEA - Features. Retrieved from Jetbrains: http://www.jetbrains.com/idea/features

The Eclipse Foundation. (n.d.). Eclipse IDE. Retrieved from Eclipse: http://www.eclipse.org/ide/

Wikipedia. (n.d.). Integrated Development Environment. Retrieved from Wikipedia: http://en.wikipedia.org/wiki/Integrated_development_environment



Read More
       edit

Monday, April 21, 2014

Published 7:35 PM by Phuc Nguyen with 2 comments

Beta Testing Google Chrome's New Features


In the current browser war, Google Chrome is the leader of all. It is no surprise that Chrome takes the throne. The browser team updates its software regularly, every two months, compared to other competitive browsers such as Safari, Firefox, Internet Explorer, and Opera.

Not only Chrome has a simple and clean user interface that proves to be successful in the market, but Chrome also offers faster speed than the rest. It is because Chrome has its own Javascript engine to render dynamic websites quickly. It is called V8 engine. Before V8, Chrome depends on Webkit framework to render web pages. And Webkit is developed by Apple and used in Safari.

V8 offers faster speed because the algorithms for speed get results straight from the machine. In simple words, V8 gives us machine code instead of operating system code. This engine skips the middle man smartly and gives us extraordinary speed that we love.

However, V8 is not totally finished. The Chrome team is still working on it and updating it regularly. The reason for that is the web is always in development and keeps changing every month. And the V8 engine needs to satisfy the demand of new web technologies.

If you are interested in speed, new features of Chrome, I will show you how to enjoy these with the Chrome nightly build. You will become a beta tester. In fact, every software is tested in many phases before a major release. Google Chrome is not different in this aspect. It has to be tested by a number of users so that the developers can know which bugs it gets in the real world and then start to fix it before it gets to many users. This beta testing phase, in turn, benefits us.

Chrome nightly build is the latest version of the software, called Chrome Canary. Typically, Chrome Canary is updated every single day because developers who want to code a new feature for the browser would infuse their code into the browser and upload it to the internet overnight.  This gives everyone a sense of where Chrome is heading and what the new features are. Let's remind ourselves that Chrome is an open-source software so the benefit of giving out the latest build is to give the community a chance to sample some new features and inform the developing team of any bugs they can find.

So here are the steps to download and use Chrome

1. Chrome Nightly Build can be downloaded at: https://www.google.com/intl/en/chrome/browser/canary.html


2. Download it to your computer and install it just like any other software.




3. Open it and use side by side with your existing Chrome. You should notice the logo of Chrome Canary is different from the stable Chrome. The color is yellowish. 


4. Chrome Canary will always run faster and smoothly on any OS platforms. Don't take my words for it, just give it a try and you will see. However, you should remember that this version is still unchecked in terms of bugs  so sometimes it will not work on some websites. However, I have never experienced that limitation with Chrome Canary.


5. If you want to report a bug, just click on the button with 3 horizontal lines and choose Tools. Then you go to Report An Issue.





6. Make sure you check the Chrome team' blog regularly to know what is going on with the product.


That's all. Doing this will help the developers in their beta testing phase and also give you a head up on new Chrome's features in the future.


References

Google Developers. (n.d.). Introduction - Chrome V8. Retrieved 05 15, 2014, from Google Developers: https://developers.google.com/v8/intro

Shankland, S. (2011, 03 16). Google refurbishes Chrome logo. Retrieved 05 15, 2014, from CNET: http://www.cnet.com/news/google-refurbishes-chrome-logo/




Read More
       edit