29 July 2012

Over Engineering Is Killing Creative Software

Is Agile good? Is it creating over emphasis on code quality and testing? Are they necessary evil or a balance needs to be struck somewhere? In a lot of teams TDD (Test Driven Development) and the transgression to BDD (Behavior Driven Development) has become a dominate way of development methodologies. But, are they really the only way? Should they really be what determines whether code meets the requirements? Shouldn't it be all about making sure you know your requirements and domain model first before you test? I feel pragmatism is really the best policy towards development. Agile approaches at times impinge on the flexibility that is so well required for creativity and innovation within applications development. Agile it seems has become a major factor in getting things out quickly where documentation is left behind and testing has become more of a factor. At times, the whole process just reeks in bugs. One can never be fully assured that no issues will arise once the code is released into production no matter how much unit, functional, integration, load, acceptance, continuous testing is done during the development, test, and stage phases. In continuous delivery perhaps one would not even require so many phases further reducing testing stage cycles but still inducing the risk of bug creep. As a person from a Computer Science background, I feel Software Engineering should not be what drives project development but what inspires better coding standards. In end, Software Engineering is a sub-field that empowers Computer Science providing the necessary skills towards developing in the large. However, in the ever changing landscape of the web and the increasing data processing requirements it is really the principles of Computer Science that pave the way towards extending and envisioning what could not be possible before. 

It feels digressing everything solely on grounds of methods-driven development expounded from Software Engineering makes the process a very uninteresting and tedious at times. People who study Computer Science by the very nature are interested in solving problems, finding algorithms that could do things better, or making solutions happen naturally that most people could not conceive of before. In process, Computer Science in all its endeavors allows one to build on the research of giants to further the potential of computers and systems as a whole. Software Engineering delivers processes, at times, more processes than is necessary and arching over Computer Science like a god father. There is a difference in the way a Software Engineer thinks about a problem and how a Software Developer thinks about a problem. There is also a difference in the way they go about finding a solution. The underlining difference arises from their background whether it be in Computer Science or Software Engineering. Through past experiences I have found that  at times, teams with a lot of people with Software Engineering backgrounds tend to focus more on processes whether they be testing, management, code release and what have you. Whereas, people in development teams coming from Computer Science background seem to approach the development from a holistic approach defined either by the optimization of an algorithm to pragmatic use of software tools. It is here where creativity is nourished and where innovation reeks interesting outcomes. Artificial Intelligence is a sub-field of Computer Science that over the years has become a major contributing factor to the Intelligent Web per se and to the derivation of information from the huge amount of data for which the term 'Big Data' has become synonymous.

I feel the way to go with development of projects is a pragmatic one. Keeping a balance on level of testing, project management, and the maintenance of code quality. Especially, against time pressures, many project teams can not support so much over engineering approaches to exist unless forced upon by architects at times. It seems only natural that people move further a field from Agile to more lean and second method phases beyond just the use of TDD or BDD. Flexibility is important and clearly from the development trend it can be seen that the old Waterfall cycle was a major contributing factor to movement away and towards developing better ways of approaching projects. However, one cannot always apply TDD to everything, and Agile at times has problems making sure teams maintain sufficient documentation. Also, developments too inclined to use Agile methods and tools end up leaving behind the customer in the process - pretty much losing the gist of what Agile was all about, test first and often, and deliver so the customer is always in the loop of work progress and acceptance. Open source frameworks and tools have allowed a lot flexibility for code reuse and rapid development of user cases in project delivery cycles. The trend is likely to emerge in more open source projects and support of such projects by industry. Even to factor in that so many open source frameworks and tools have only just been developed for development which makes it even more possible for teams to develop on time and check for correctness. And, above all else it has provided a way to reuse other peoples' code without reinventing the wheel of creativity - building better and productive code that matters. 

Agile in all its glory is a nice approach with a set of methods whether they be Scrum, TDD, or BDD are good to have in the mind set. However, use of them should be approached from what is the best way to go about a problem. Just like the use of design patterns, not all can be applied to all problems, all the time. Creativity and innovation is what makes even such methods and tools possible. So, killing the mind set with only accepting one way of doing something is like coming in the way of progress. Open source is all about freedom to create and collaborate. A balance in process-driven attrition and freedom to innovate, create and empower development is the best policy.

27 July 2012

The Wonderful Fish Called Endlers

Endlers are one of the most liveliest tropical fish in the aquarist domain. They cultivate like mad and their over excited exuberance in the aquarium makes for an immense landscaping effect for the home. They require very little care and are extremely sociable. After a few feeding rituals they can quickly acclimate to such times and will congregate towards the individual. One can trace a finger up and down the tank surface and the endler will equally follow. They can be kept in a species only tank and will generally adapt to most small to large high to low tech environments. Generally, they have a preference for bog wood and a well planted tank with other peaceful individuals. It is always recommended to not keep endlers with guppies or any other type of livebearer and even predatory fish. This is because Guppies and Endlers can often interbreed which is not favorable. A livebearer, incidentally, is a type of fish that retains most of the eggs and tends to give birth to live  fry. Endlers appear in variety of types in the aquarist trade. However, in wild habitat they may be rarely seen. The males are often smaller in size measuring to about 1.5 inches with mixture of colors. The females are often larger measuring to about 2.5 inches and generally more dull in color. Keeping females and endlers in same tank over time can lead to a pretty rapid cultivation of a growing community. One of the major drawbacks to keeping endlers is that they have a very short lifespan. Females often can die of over stimulation from males. Therefore, it is preferable to keep them in a ratio of two females to every male. In general, a male and female endlers could live to a maximum of 2 years. As is often the case, the lifespan of a fish is dictated by the size of the tank, the food diet, and the quality of filtering tank water as well as the environment. Feeding them once a day or even every other day is sufficient. Otherwise, a feeding twice daily with proportionately less food will also suffice. They usually require a variety of food supplements from flakes, to frozen and even live. As they are omnivores, a rich vegetable and sprinkling of protein diet will do. If one starts to over feed them with a protein diet they do tend to become more edgy and aggressive in the tank even going so far as to try eating their own fry or nipping at fins of other fish. In wild, they do tend to live more on algae and plankton.

Types of food:
Quality and variety of foods given is important to fish to keep them continuously healthy and also is economical as most packages can last to up to a year which is less expensive then having to keep buying new fish. 
  • Sera GVG Mix (crushed)
  • Sera Mixpur (crushed)
  • Sera Artemia Brine Shrimp (Freeze Dried)
  • Sera Flora (crushed)
  • Sera Vipan Tropical Flakes (crushed)
  • Sera Plankton (size depending on amount of fish in tank)
  • Sera Daphnia (Freeze Dried)
  • Hikari Tropical Algae Wafers (size depending on amount of fish in tank)
  • Cyclops
  • JBL Spirulina Flakes (crushed)
  • JBL Guppy Flakes (crushed)
*Try to avoid feeding them any diets containing tubifex worms as they tend to be too heavy on their digestion.

One can also feed them live proteins instead of freeze dried. However, live feeds do come at a risk and extra maintenance. Over indulgence is bad for fish which can start to dissipate their livers and can also lead to constipation and other effects. It is often advisable to side on less rather than more when feeding.

A Daily Diet:
Generally, GVG Mix with Flora can work on a daily basis giving a high iodine support. Freeze dried and live bits can be kept as a variety in a differentially smaller amounts. Most foods will be too big for them to eat so crushing the food not only makes it more efficient but also more palatable. Try to avoid excessive hand contact with fish food to minimize any chance of contamination and to maintain freshness keep the food sealed in the original package. Also, best to wash hands before and after feeding. 

Minimum Tank Sizes:
A 30-40L Tank is usually sufficient for them. However, larger tanks are usually advisable as they can reproduce every 30 days.

Plants are often a good edition to the tank. They really like green leafy ones for plenty of hiding, providing spaces, and navigation. Among some of their favourites are Anubias Barti, Anubias Nana, Water Wisteria, Java Moss, Java Fern, and a variety of small carpet foreground plants. A variety of scattered bog wood and plants not only provide for plenty of hiding places for females but also add interesting dynamic elements to the tank. They also tend to prefer a bit of dissolved aquarium salt in tank as well as regulated water temperature of between 24-28 degrees Celsius. With an active filter and dechlorinater, this is sufficient usually for a low tech tank. But to go further, regulated CO2 may also be needed. Endlers also enjoy aeration bubbles. Fish stress very easily and when they do they become more susceptible to diseases. Endlers like livebearers can have a tendency of constipating themselves with food. Pea supplements, vegetable matter, and even aquarium salt can cure a lot of the ailments without requiring significant levels of quarantine. When a fish becomes infected it is best to quarantine and to provide appropriate treatment. Do not over populate the tank. A specific tank size can only hold so much water, and that water over time can only hold so much oxygen. More fish one has in a tank the more the stress on the filter, the more food they eat, the more mess they produce, and more oxygen is consumed which all equals to more water changes and a higher maintenance. Conversely, excessive amount of oxygen can also cause fish to inhibit bubbles around the gills and gasp more frequently above the surface. This can be caused by having a lot of aeration and plants in the tank while feeding. At times they may also show fungi on their skin or fins, this is often down to stress or as a result of touching against gravel, or containing objects in the aquarium. To avoid this one should frequently conduct water tests, do once or twice a week water changes of 20%, periodically cleanse the gravel and surrounding surfaces, and clean filter. Do not over clean as this will reduce the good bacteria in the tank. At times adding just a bit of aquarium salt can do the trick or just not feeding them for a whole day can sort the issue out. Always treat the introduction of external chemicals and quarantine as the last resort unless the natural options do not sort the issue out themselves. It is always best to use common sense and not to keep more fish then the tank can accommodate i.e. do not keep 30 endlers in a 30L tank. Being a responsible aquarist and knowing one is looking after a living thing should be kept in mind.

Where to get them?
In London (UK), some good stores to get pure endlers are Tropicals and Marines or Design Aquatics. Otherwise, they can also be obtained online via delivery but that is not a recommended option. When buying one should usually tend to go for the fish that appears to be the most active and healthy as well as less aggressive. Also, as they have a short lifespan it is also advisable to seek the ones with more affluent color formations as older endlers tend to recede into darker and more faded coloring. In stores one may also notice a variety of different types of endlers. Snakeskins are not pure endlers they are a hybrid between guppy and endler. Attached below are a couple of links for further reference. Mix breeds may not usually share the same characteristics of an endler. One should not keep pure endlers with hybrids or guppies. A lot of this is because the pure endler stock is very few and far between in numbers both in the aquarist trade as well as in wild. Hybridizing can often lead to fish being also more susceptible to diseases as it is now often the case with platies.

male endler

male endler display often made towards a female

female endler

snakeskin (hybrids)

What Do People See in Facebook

Why do people visit Facebook? What is the allure of Facebook? I have never felt the need to even update my profile on that site. It leaves me quite baffled as to why people seem to be so hooked to the Facebook process. It is as if people feel almost mandated and duty bound to update everything even the little mundanes of life as accounts on their profile for all to see. So, many people on there all connecting to everyone else in a social graph of people some of which never have met, don't know each other and there is bound to be heaps of strangers sitting on ones site who they never even talk to and yet they are there to extend the tally of so called friends on the list. Is the site only for the shallow? Why do people have to connect only by the face? How valuable is a face on a Facebook? It is one of those websites that becomes a hit from sheer popularity and trends developed from people passing their interest to others. I have never felt hooked to the site. In recent, times there has been a lot of change to the site with updates to security, unusual forums being developed, as well as new ad campaigns. Almost on a regular basis there seems to be some sort of update that can potentially compromise a users personal details. Are social networking sites putting people at risk from their personal details being open and leaked. Why does one feel the need to let everyone know about who they are, what they are up to, and everything that is going on in their daily affairs? Are places like Facebook really a way to socially connect in the new century or are they merely making people more anti-social and less physically close for communication? Places like Facebook also become a playground for the vulnerable and in so making people so much more mentally effected by actions of others. The drawbacks to Facebook are so much that it seems very little reason that one should feel the need to use it. Also, social networking sites are more a trend that fades away after a time and keeping the interest of the user without creating too many functional changes at once can be quite a tricky affair. In recent times, this has often been the downfall of Facebook and why so many have decided to move on.  Only time will tell what the future holds for Facebook.

Best for Steaks in London

London is a hot spot for steaks and with so many different ways of cooking them it is no wonder the culinary skills that are on display. As rains are almost a regular thing in London and winters relatively longer then summer, a steak or a roast meal becomes a forte of choice for many. In a big city steaks are in well demand. And, they are often not cheap. Some would rather just make their own homemade option. It is a choice that cannot really be argued with other than to enamor ones taste buds by seeking out other textures in food. Most of the really good steak places in London seem to be situated in the West End or the City of London. Perhaps, this is down to the variety and appeal of such customers that attracts them to steaks. I have listed below some fine restaurants, not in any order, and a way of articulating some top steak outings.

If Squash Was in The Olympics

Not all Olympics sports appear to be fashionably popular across the world. So, why are some sports events selected for Olympics and some aren't. Is Olympics Games meant to only showcase sports that  can be viewed by a massive audience? What are the limitations behind their selectivity process? Some events cannot even realistically be classed as sports because they provide for no real mental or physical exertion. Take for example, archery and shooting, in what form do they provide for a mental and physical exertion? They more like darts and snooker, a bit like what I would call pub games, standing in one place and trying to find something else to do other then watching football on TV or talking to girls while still making sure one is is close to his/her pint. Even weightlifting, what is so sporty about the whole idea of making oneself more muscular and able to lift weights. For me gym, is not exactly like sports. It is something one does as part of preparation for sports to get in shape so to speak. Even events like BMX, they not really qualified to be in Olympics category. BMX just like skateboarding has always been more of a social sport, teenagers getting together to find something to do between home and school to avoid getting into trouble. I often wonder why Squash is not part of the Olympics. Squash is a fast sport, makes you run, stretch, mentally plan shots, and it also hurts really bad when one gets hit by the ball from an opponent at back. It is one of the very few games that you can play to build your stamina, get in shape, and burn heaps and heaps of calories. It is also one of the best games to keep your heart in shape and yet exerts a lot of effort across your legs and back and arms. Almost every part of the body gets used even the brain. Squash is a mix between racquetball and tennis. Squash also one of the very few sports that can be played in almost any poor country in world with even makeshift walls. As all you really need is four walls and a tin at the lower end of the front wall. Also, rubber is available almost every where in form of reusable condoms and tires, going further even through hides from farming animals. Is it any wonder why some of the very best, Squash players appear to have an Asian background. Perhaps, the western world does not seem to appreciate the sport as much as the Asian subcontinent. Or, perhaps, it is down to their dominance. Further, it could all be just to do with fact that the sport has a very limited view for a spectator to watch making it difficult to sell tickets. Nevertheless, I feel a sport in Olympics should really be one that not only stretches an athlete mentally but as well as physically. And, Squash excel in both areas. Squash is even a non-sexist sport in that respect making it equally accessible for both men and women. It is quite surprising that women can take up swimming but they don't bother to take so much as a chance to explore Squash. I would have thought if a woman did her swimming every week and squash every other day of the week, then  there would be no need for diets. In fact, most active Squash players prefer to attend the gym first, play Squash then swim or a similar combination. Even adding a run, jog, or cycling there would not be unthinkable. Possibly, be one of the most healthy ways of keeping fit. I am hoping one day Squash will qualify for the Olympics. The sport could use more awareness and more people willing to take it up as an active sporting and social activity. It is surprising how Tennis seems to be so much more popular then Squash. Even though, someone who plays Squash can easily increase their game play in Tennis. However, the same does not hold the other way. It is really only for time to tell when such an awesome sporting activity like Squash will truly find its place in the Olympics.

Cyclists of London

Walking on the streets of London the major obstacle in your way is almost always the cyclists. Most cyclists in London need to attend a course on road rules and furthermore the common sense understanding that they really should be using brake when they need to. It is not the pedestrians job to be watching out for a cyclist. It is really the job of a cyclist to stop and give way to a pedestrian instead. In London, it is almost always the pedestrians right of way over everyone else. But, it is almost always a cyclist that seems to think it is ok to hijack a pedestrian's walkway, to not bother braking while crossing the street, to not even brake when turning, to not stopping at a traffic light while a pedestrian is crossing. Once a cyclist gets on their bicycle it is not stopping them, it is as if they forget they even have a brake option. They seem to speed along busy roads getting in way of pedestrians, often even asking pedestrians to get out of their way. The amount of reckless cyclists has led to many accidents in streets of London. However, whenever they are caught in a collision with a motor vehicle they often also play the blame card. They seem to find it ok to cut corners without following road rules or the right of way. They basically follow the rules of road rage once on their bike. In London they even have separate lanes for cyclists now. They even have a cycle hire scheme and so do most companies provide their own schemes for employees. The amount of cyclists in London has grown steadily but the common sense for most of them lags behind.  

Social Networking in Society

Social Networking has become a major contributing factor in how people connect with others both at work and within their social lives. It is even a way for people to meetup with shared interests with like minded individuals. It even provides a unique scope to analytics and in understanding sociology as well as psychology of people especially on social group interactions. Businesses gain a lot of insights from social networking on brand management and product launches. Different attitudes to particular subjects and opinions can be mined in often near real-time. However, one looks at it social networking has allowed people to connect in creative ways in globally dispersed environments. But, one thing is for certain it also poses a risk to peoples' infringement on their personal information. So, much of personal information is now available on people online that is quite a scary thought in how identity theft has become such a security issue. Advertising platforms also do not help within social networking as they often require a certain level of individual information before such contextual ads can be produced. Facebook over the years has changed a lot of their features on their platform reducing the level of security on protecting personal information. Many social networking sites also have an almost bell shaped curve trend about them. People slowly start to lose interest and move on to something else. It becomes no longer a new but the old as people move on to other things. When Myspace came into existence it was the new thing on the block. Soon as Facebook arrived the Myspace following reduced significantly. And, as Twitter arrived on the block so many have switched over and lost confidence in Facebook. Perhaps, in time the current social networking approaches will change in future and look to converge more security for personal information and provide for more unique user experiences.  

Pedestrians of London

Pedestrians in London have no discipline. They walk in a complete zigzag fashion almost crossing one's path without a speck of any manners in sight. One would expect in a country that established manners, etiquette, and the queue system there would be some discipline on walkways but it is completely the opposite. Perhaps, it is exactly for that reason why the British established the queue system to resolve the over arching and inherit problem of them constantly walking in zigzag fashion. Most pedestrians also have no care for people around them, it's a very self-indulging sort of experience. When one walks as a pedestrian, one feels the sheer individualism that comes about from capitalism and from the busy rituals of life. It seems many pedestrians totally lose the notion of care for another and drift in a world of their own, utterly self-absorbed in the matters of their own life. There is not an evidence of an "excuse me" when one crosses by or bumps into another person on the way. Perhaps, there is a floating inclination of the fast pace of life in London which is getting even faster. However, it still leaves one utterly annoyed by the time they reach their destination. Pedestrians also often assume that the other person will get out of their way rather than them giving way. As a pedestrian one not only has to watch out for motor vehicles, tourists, cyclists, pets, pigeon droppings, construction workers, but also other pedestrians. Maybe, that is why so many then decide to use the bus and the tube. During rush hour it is more like ants marching. London is a crowded place and the population is increasing ever more. It is no easy experience being a pedestrian on the streets of London requiring both physical and mental prudence.