Top Tricks to Increase Your Twitter Traffic

With our current way of life, Social Networking Websites are one of the best ways to reach the masses, if used correctly. Websites like Twitter make it possible for you to easily advertise and promote your business or blog, although, unless you are actually able to build up a decent following, you will simply be talking to yourself. The only real way to get a massive number of followers is to tweet something positive about Justin Bieber, and then sit back and watch as thousands of young fan-girls follow you, although these probably aren’t the people you want to be targeting with your blog/business ideas. Here are some helpful tips to remember if you wish to improve your Twitter traffic.

Brilliant Twitter Bio
On a social networking site that has millions of users, you need to ensure that you have something that makes you stand out. This is where your Twitter biography comes in. If you are going to have a boring biography that puts the reader to sleep, there will be no ‘follow’ coming your way. It is important to have followers that have similar interests to you, therefore it is important to actually be yourself (this is rare on the internet). This is not an excuse to write an essay about yourself, keep it short and sweet, making sure to add something about both your personal and professional life.

Username is Key
Usernames need to be selected carefully and according to your specific niche. Let’s say you are a gambling fanatic and wish to tweet about all your epic adventures on http://www.jackgold.com.Calling yourself @CuteSk8erChikk isn’t quite going to cut it. It would be much more beneficial to go with something like @JackpotJoy, which will help make it easier for people to find you.

Pointless Hashtags
There is nothing more off-putting that reading tweet after tweet that ends with a large number of completely pointless hashtags. If you wish to promote your educated ideas with fellow educated individuals, using hashtags like #cute #summer #NoFilter and #Yolo, is definitely not the way to go.

Tweet Regularly
No one is going to follow you if they find your profile and see that your last tweet was some eight months ago. With the fast-paced world that we live in, it is important to tweet regularly, with information that will appeal to your followers. This will make them want to retweet what you have to say, and will ultimately increase your traffic. There is however a fine line between regular tweets and spam. Constant tweeting will fill your follower’s feed, frustrating them to the point of an ‘unfollow’.


By Jason Swindon

Get over 50GB of free online storage and syncing with MediaFire

Just about every major tech company is offering free online storage space, but few give you as much free space as MediaFire. The cloud storage provider is heating up the competition with offers of 50GB or more of free storage--and, with the new Windows and Mac desktop app--automatic file syncing as well.

Yes, that means, as The Next Web reports, taking on popular online storage provider Dropbox.

MediaFire starts you off with 10GB of free space, and it's ad-supported, but that's still five times as much free space to start off with as Dropbox. You can earn 50GB (or more) with referrals and other actions. I had already locked in a 50GB account, thanks to downloading the Android app, but the bonus space--via connecting social accounts or installing MediaFire Desktop, even--is still available on top of that.

Even if you've already got an account with Dropbox, Google Drive, SkyDrive, and/or another cloud storage provider, 50GB of free space is still hard to pass up. MediaFire Desktop includes: automatic file syncing to the cloud, link sharing, file version tracking and automatic duplicate file removal, activity feed, and quick screenshot capturing.

Love and hate for Java 8 (Everything that you need to know)

Java8 isn’t scheduled for for release until March 2014, but early release versions have been available for a while. Some of the most interesting new features of Java 8 are: 
  • Streams 
  • Functional interfaces 
  • Default methods 
  • Lambdas 
  • Java Time 

Streams 

The new java.util.stream package contains “classes to support functional-style operations on streams of elements”. Streams aren’t a new type of collection and don’t replace any of the existing ones such as Lists and Queues. Instead, they provide a way to interact with an existing collection, and in that respect are more similar to iterators. 

The javadocs describe a stream as “a sequence of elements supporting sequential and parallel aggregate operations.” A stream pipeline consists of a source (e.g. a collection), intermediate operations (e.g. a filter or map) and a terminal operation, which produce a result (e.g. sum or count). Streams are lazy in that the operations on the data are only performed at the last minute i.e. when the terminal operation is called, and the stream is processed only once. 


For example: 

int totalFxTrading = blocks.stream()
        .filter(trade -> trade.getType() == FX)
        .mapToInt(b -> b.getTradedAmount())
        .sum();



Functional interfaces

Java 8 will have a new feature called functional interfaces. A functional interface has exactly one abstract method. There are many such interfaces that you have probably used as a Java developer, such as Runnable, ActionListener, Comparator and Callable. In Java 8 these types of interfaces are now more formally called Functional interfaces. They can be identified using a new @FunctionalInterfaceannotation, and most importantly, can be represented using Lambda expressions (more later). For example, to use an ActionListener in the past, you needed to create an implementation, often using an anonymous inner class. 

For example: 

JButton button = new JButton();
        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent ae) {
                System.out.println(ae.getSource());
            }
        });


Using functional interfaces, this becomes much simpler: 


JButton myButton = new JButton();
        button.addActionListener(
            ae -> {System.out.println("You clicked the button");}
        );


We never need to even mention ActionEvent – the compiler derives the type of ‘ae’ from the context. Note that the @FunctionalInterfaceannotation, like the @Override annotation, is not required. Instead it signals to the compiler your intentions so that it can warn you if something looks amiss e.g. more than one abstract method is available. 


Default methods

Prior to Java7, an interface was a fairly simply thing. It could contain abstract methods only (and constants) which had to be implemented by concrete subclasses. An interface was basically a bunch of method signatures, but could never contain a method definition/implementation. 

In Java8, things gets more interesting. Default methods can now be added to an interface. These are methods that do have an implementation, do not have to be overridden in the interface implementation and can be run directly from the interface. 

These default methods were added as a necessity to provide backwards compatibility. If they had not been added, it would not have been possible to extend/improve the existing collection interfaces, for example, without breaking all the implementations. So for that reason, default methods are sometimes referred to as defender methods. 

To me, the really interesting thing about default methods is that they allow a form of multiple inheritance. Since a class can implement more than one interface, and each of those interfaces can now potentially have a default method with the same name, which version does the subclass inherit? I think this is referred to as the diamond problem. If such a scenario arises when using Java8, the compiler will provide a warning. You can use the syntax X.super.m(…) to explicitly choose one of the parent class’s implementations. 

On a side note, why do these new default methods need the default keyword at all? Couldn’t they have worked just as well without that keyword? The answer is yes, the default keyword is redundant, just like the abstract keyword. Both were added to make things a little more clear. This post has some more details are links. 


Lambda

According to Wikipedia, a lambda expression is “a function defined without being bound to an identifier”. Lambda expressions are coming to Java in version, designed to allow code to be streamlined. 

Many of the other changes I discussed above(default methods, functional interfaces) are very closey related to the introduction of lambas. 

When a Lambda expression is written, it is translated into a functional interface at compile time. Here is an example of using Lambda expressions to replace an anonymous inner class with much cleaner and more readable code.


Old way without Lambda: 

button.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent ae) {
            System.out.println(“Action Detected”);
        }
    });


New way with Lambda: 


button.addActionListener(e -> {
        System.out.println(“Action Detected”);
    });


Using Lambda expressions will often make the code easier to read and require fewer lines. 


Java time

Dealing with dates and time in Java has never been ideal. At best it has been quirky, and at worst, a bit of a nightmare. The Date class was clunky and is now littered with deprecated methods. The Calendar class was an improvement, but I personally always seem to spend more time that I would like having to trawl through the API docs, even for things I have done before. Other 3rd party libraries tried to deal with times in a more elegany fashion (e.g. Joda time). There have been rumors of improved handling in Java itslef anf with Java8, it is here – the java.time package. 

A new (abstract) Clock class provides some useful static methods such as systemUTC() and systemDefaultZone() to get the current time and timezone. And a number of new classes such as LocalDate and LocalTime, and YearMonth and MonthDay provide more elegant handing of day to day (pardon the pun) date operations. 


What’s not in Java8

On a side note, although date/time handling will be improved in Java8, amazingly there is still no good way to handle currency in Java (something I have blogged about in the past). Doubles (and all floating point numbers) are inherently unsuitable for money, or anywhere exact calculations are required. Using int or long requires keeping track of decimal points, and BigDecimal isn’t ideal either.Those guys may improve things, but it looks like we will have to wait until Java 9 for that  :-)

Install and run Windows on a USB / External HDD using an ISO

Ever wanted a copy of Windows you can take with you wherever you go, to use on any computer you want? It's possible: here's how to install a portable version of Windows 8 on a USB hard drive that you can take anywhere.P
The Enterprise version of Windows 8 has a feature called Windows To Go that lets you install a portable version of Windows on a "certified" flash drive. Unfortunately, most of us don't have the Enterprise edition of Windows 8, nor a certified flash drive. However, there is a tool called WinToUSB that can essentially do the same thing, no matter what version of Windows you have. Here's how it works.
WinToUSB is a free software that allows you to install and run Windows operating system on a USB hard drive or USB flash drive, using an ISO image or CD/DVD drive as the source of installation. WinToUSB also support creating bootable WinPE USB drive, it can help you to transfer the contents of WinPE to the USB drive and make the drive bootable.

WinToUSB's key features include:
  • Easy-to-use wizard interface that provides step-by-step instructions for installing Windows/WinPE on a USB drive.
  • Install Windows/WinPE from an ISO image or CD/DVD drive.
  • Support for Windows NT 6.x OS family (Vista/7/8/8.1/2008/2008 R2/2012/2012 R2) and WinPE 2/3/4/5.
  • Use any edition of Windows 8(.1) to create Windows To Go USB drive.
  • Support for MBR and GPT disk layouts.
  • Don't need install WAIK (Windows Automated Installation Kit) or WADK (Windows Assessment and Deployment Kit).
Important notes:
  • Windows Vista/7/2008/2008 R2 does not have built-in USB 3.0 support, so Windows Vista/7/2008/2008 R2 will have to be booted from a USB 2.0 port.
  • USB flash drives are very slow. It takes a long time to install and run Windows from a USB flash drive, highly recommend using a USB hard disk or Windows To Go Certified Drives.
  • Windows To Go drives can be booted on different computers, so you can carry it to anywhere and use it on any computer.
  • Windows 7 is not completely portable. You may have activation and driver problems when booting on different computers.
  • You need to be an administrator on the computer you are installing the WinToUSB on.

System requirements

  • Windows XP or later (32/64-bit).
  • Intel® Pentium® processor.
  • 256MB of available RAM (512MB or more recommended).
  • 10MB of free space on your hard drive.
  • 800x600 graphic device (higher resolution recommended).

Downloads

Download WinToUSB V1.4
Let me know here:  Snehal [at] TechProceed [dot] com,  if you need any further help.  :-)