RooJSolutions en RSS: RooJSolutions - /index.php 150 150 Mass email Marketing and anti-spam - some of the how-to.. 2015-11-19 00:00:00 <a href="">Article originally from rooJSolutions blog</a><br/> <p>I'm sure I've mentioned on this blog (probably a few years ago), that we spent about a year developing a very good anti-spam tool. The basis of which was using a huge number of mysql stored procedures to process email as it is accepted and forwarded using an exim mail server.</p><p>The tricks that it uses are numerous, although generally come from best practices these days.</p><p>The whole process starts off with creating a database with</p><p></p><ul><li>'known' servers it has talked to before&nbsp;</li><li>'known' domains it has dealt with before.</li><li>'known' email address it has dealt with before.</li></ul><p></p><p><br></p><p>If an email / server / domain combo is new and not seen before, then apart from greylisting, and delaying the socket connections we also have a optional manual approval process. (using the web client).</p><p>Moving on from that we have a number of other tricks, usually involving detecting url links in the email and seeing if any of the email messages that have been greylisted (with different 'from') are also using that url.</p><p>On top of this, is a Web User interface to manage the flow and approvals of email. You can see what is in the greylist queue, set up different accounts for different levels of protection (either post-delivery approval, or pre-delivery approval etc..)</p><p>This whole system is very effective, when set up correctly. It can produce zero false negatives, and after learning for a while, is pretty transparent to the operations of a company. (email me if you want to get a quote for it, it's not that expensive...)</p><p>So after having created the best of breed anti-spam system, in typical fashion, we get asked to solve the other end.. getting large amounts emails delivered to mailing lists.</p><p><b>If you are looking for help with your mass email marketing systems, don't hesitate to contact us <a href=""></a></b></p><p>Read on to find out how we send out far to many emails (legally and efficiently)</p> Hydra - Recruitment done right 2015-11-16 00:00:00 <a href="">Article originally from rooJSolutions blog</a><br/> <div> <span>For the last few months we have been finishing up the first round of work on the <a href="">Hydra Jobs platform</a>. Something, along with the founders we think is quite revolutionary idea in IT recruitment.&nbsp;</span> </div> <div> <br> </div> <div> Key to it's design is the idea that the first step in finding someone is not putting up an advert, and expecting a shitstorm of resume's that are totally unconnected to the requirements. Taking a step back and realizing that as an employer, you would rather do a search for all the available candidates, than risk the time and wasted effort in sorting though unrelated piles of CV's.</div> <div> <br> </div> <div> We have spent the last 9 months working to get this to a MVP. The platform is now running, and the business operations are now underway.</div> <div> <br> </div> <div> So to make this work, the first step on Hydra was to design a set of Questions that could enable a detail search to work. What we ended up with is probably the easiest, yet comprehensive way of entering your profile data so it can be matched efficiently with companies recruiting staff.</div> <div> <br> </div> <div> It has been an interesting few months getting Hydra up and going, now we are over the hump of the work, <b> we are looking for more interesting projects to take on, so if you know of any, please <a href="">contact us</a>. </b> </div> <div> <br> </div> <div> Read on for some of the tricks we used to make this project, one of the best recruitment platforms around.</div> <div> <br> </div> <div></div> Roo J Solutions Growing into 2013, always recruiting, and developing differently 2013-01-28 00:00:00 <a href="">Article originally from rooJSolutions blog</a><br/> As the business is always growing, finding time to write even the shortest of blog posts becomes more difficult, but as we are looking for more staff yet again to help solve our clients growth plans, I thought I cover some of our inventive ways we have dealt with growth, and how we differ from most other software development companies.<div><div><br></div><h3>Developer driven</h3><div><br></div><div>When I started the original consulting company over 10 years ago, I focused the work on software&nbsp;development&nbsp;which tried to solve complex problems and deliver maintainable systems that could grow over the years. If we needed design work, it would be either outsourced, or done in partnership with similarly focused companies. This means our business has long been based on repeat business from a group of growing companies</div><div><br></div><div>Over the last year as we have grown to three people, and still as busy as ever, that focus has become even more clear, as I have written before, our competitive&nbsp;environment&nbsp;consists mostly of design companies with limited interest in producing quality software, rather quickly throwing trash out the door, getting paid, and moving on to the next sucker.. (sometimes we get to clear up that mess...)</div><div><br></div><h3>Applying software development to our own processes.</h3><div><br></div><div>Our business is no different in many ways from our clients, we are always attempting to optimize our processes, reduce time spent on meaningless tasks and ensure that everyone is spending their time adding value to our clients&nbsp;businesses. In software development this involves a number of core pieces of infrastructure, Revision control, review systems, task tracking, time billing and accounting. The result and aim of these are two pronged, ensuring that the quality of work being produced is worth the money we are being paid for it, and making sure our clients are aware of their current and outstanding expenses.</div><div><br></div><div>While we have the above processes in place, they often are not applied in exactly the same way that the industry has come to expect. This is mainly due to the way that rather than going for off the shelf solutions to our problems, we have tended to develop the tools in-house (a great way to perfect your skills often). While this smacks of NIH (Not invented Here) syndrome, and I can not say that I do not worry about that sometimes, the result is that our processes drive the design of our tools rather that our tools designing our processes.&nbsp;</div><div><br></div><div>At present one of the key differences &nbsp;is our approach to the classic developer focus on task driven commits. As this blog has mentioned before, we do not do task driven commits (gitlive). Every single file save is&nbsp;committed&nbsp;into our revision control system. While this may sound a bit strange, It has significant benefits for all involved. After so many years of working I can not tell you how many times that work has been lost due to accidents. Since we are getting paid for this work, any possibility of loosing it would be costing us money (or if we where not so ethical, our clients, which sadly i suspect happens all to often in the industry.).</div><div><br></div><div>I have been considering for a while if we should merge this workflow into a more task driven commit&nbsp;methodology, but as what I though would be a short term fix, seems to have re-in-forced&nbsp;this idea that we should not go down that route. This short term fix was the concept of daily commit messages. In a normal task driven process, the commit that fixed the issue would be appended to the ticket (and frequently emailed for review), it could then be reviewed as the issue was signed off.</div><div><br></div><div>We did try this on one project, however what resulted was a constant back and forth on multiple issues, and a very time consuming review process. This using the most expensive resource in the company, senior developers. So in switching to daily diff's there was only the need to review the changes for each project. In this way it was also possible to communicate not only serious code fixes, but also advise on better practices. without having to throw that into a tracking system (Although email in some respects is always a tracking system).</div><div><br></div><h3>The full stack experience</h3><div><br></div><div>Our new staff over the last year have grown considerably, comming from a classic Hong Kong software development&nbsp;environment, they had ended up focused on a single area of the development process. They would work on projects for weeks and come back with a result, often having to persude, or wait on information from other teams working on a different area of the same project.</div><div><br></div><div>I regard this as one of the worst industry practices out here, so over the period they have been working at Roo J Solutions, they have been thrown in the deep end with every part of the standard development stack, front end, back end and database. Tasks are frequently day or even hour based, however working as a team now, they can pass the learning of the new tools around. Always having my knowledge as a good backup. To the suprise of someone who had worked on that team with them before, they not only did not sink, but swam very well being given new challenges.&nbsp;</div><div><br></div><div>So if this sounds like a interesting place to work&nbsp;and&nbsp;you or someone you know would like to be attacking our challenging&nbsp;new&nbsp;projects, please pass on the post or&nbsp;email me at, with the usual information (If I have to tell you.....)</div></div> turning a startup into a reality. 2012-10-22 00:00:00 <a href="">Article originally from rooJSolutions blog</a><br/> <span>This week saw the release of the latest site developed by Roo J Solutions,&nbsp;</span><a class="moz-txt-link-abbreviated" href="" target="_blank">;</a><span>a Hong Kong based beauty booking service. While the site has gone through the usual last minute bug-fixes before going live, it all came together in the end.</span><br><br><h3><span>Developing a feature rich web site.</span></h3><br><span>While we where busy finishing off this site, We have had a few other projects and discussions going on, and what has been interesting lately has been the realization that far too many companies and startups are having real trouble getting web sites developed properly.</span><br><br><span>Often they are cutting costs, and contracting under-qualified or unsuitable individuals for the process. Resulting in disaster hitting quite early and the project never being complete as their 'developers' have no idea how to solve the technical issues involved.</span><br><br><span>But the saddest and worst scenario's I've seen, has been the frequent employing of design companies or 'interactive media' companies as the lead contractors on web based development. This can be the most expensive recipe for disaster. In one case the cost of the development was bloated to over 10 times the realistic cost of the project, and what was delivered was just a prettified open source project. When the client started asking for features that the &nbsp;original open source project provided, they where quoted quite unreasonable amounts. The sad fact is that the relationship between the supplier and customer was damaged beyond repair. Without a deep understanding of how software projects are developed, these companies failed to manage their customer's expectations.</span><br><br><h3><span>Fool me once, shame on you; fool me twice, shame on me.</span></h3><br><span>In another case a design company was asked to provide a custom web site, which from a design perspective looked quite nice, however as part of our installation on the server, we got to see the kind of code that was being delivered. If this software was a car, the wheels would fall of when driving out the garage, It was the worst and most dangerous code I've seen in nearly 10 years of development.</span><br><br>Read on for more about prettybooked, and how to get projects done properly... Roo J Solutions Limited is recruiting 2012-01-31 00:00:00 <a href="">Article originally from rooJSolutions blog</a><br/> Since we have been very busy already this year, I have now almost completed the process of migrating from a Sole Proprietor into a Limited Company. Roo J Solutions Limited is now a registered Hong Kong Company. We are now looking for full or part-time staff (based in Hong Kong).&nbsp;<div><br></div><div>Please read the full post for details.&nbsp;</div> Barcamp Hong Kong 2009 2009-09-14 06:39:12 <a href="">Article originally from rooJSolutions blog</a><br/> Went along to <a href="">Barcamp in Hong Kong</a> this weekend, Have to thank all the guys &amp; girls involved in organizing it. As it was a chance to meet some interesting people, who I did not realize where even in Hong Kong.<br /><br />Barcamp Hong Kong, is perhaps a little different from what you might get elsewhere. First off it's not so much a techy thing. (Evidenced by the sight of 1 Linux desktop = mine...) I gave one talk on 'D', and went to a couple of others with lesser technical emphasis - drupal / OO JS etc. but the majority of talks where either business development style (raising funds, startups). or iPhone related (with out the coding stuff). <br /><br />I guess this comes from the general attitude here that most programmers tend to regard it as a stepping stone to management or something, and have very little passion about the whole industry.. (as someone described it to me).<br /><br />The technical talks gathered at most 20 people (out of I guess 200-300 people at the camp). And unfortunately, my talk/chat/discussion got rather hijacked by someone who wandered in, was completely non-technical, and started asking irrelivant questions. (self reminder, politely say, this is for programmers only next time)<br /><br />Overall it was not much of a learning experience, rather the chance to actually meet developers with similar interests, (and see that they actually exist) - Shame I had to leave early for family stuff, as the drinks would have been good...<br /> HK Government Incompetence or just plain stupidity 2008-06-18 18:15:00 <a href="">Article originally from rooJSolutions blog</a><br/> <div> <p>A friend of mine received a letter the other day from the Hong Kong Inland Revenue Department (IRD), It was addressed to her company, and cc'ed to Her (at the bottom of the letter). The letter was titled &quot;<span style="font-style: italic;">Notice For Recovery of Tax Under Section 76(1) of the Inland Revenue Ordinance.&quot;</span></p> <p> </p><p>Her first reaction was &quot;This must be some kind of mistake&quot;, I'm not a boss/owner of this company, I guess they must be sending it out to all the employees.</p> <p> </p><p>Anyway, to help her out, I thought I'd phone up the IRD to find out why this letter arrived. It did not take long on the phone to realized that this letter was actually meant for her. So we did a little more reading of the letter. It turns out that it was a demand notice for.... wait for it....</p> <p> </p><p>&quot;<span style="font-style: italic;">Notice 1&quot; for Final Assessment for the year <span style="font-weight: bold;">1993-1994 </span> in the sum of HK$309 </span>(that's about US$40 or 20GBP)</p> <p> </p><p>To be honest I thought this was hilarious.. they had waited nearly <span style="font-weight: bold;">15 years </span>to send out a first reminder to pay the amazing sum of HK$309.. Got to be one of the best examples of real government incompetence I've seen in a long while.. </p> <p> </p><p>While it's not a huge issue in terms of finding the money (raid the piggy bank), I though it raised quite a few questions, some rather serious.</p> <p> </p><p> </p><p style="margin-left: 40px;">1) Why address demand letters to employers rather than employees?</p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">2) Is this not over 6 years (the standard for Statue of limitations - or Hong Kong's equivalent legislation)</p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">3) How are you supposed to challenge this? - I sent a cheque in 1993, it was cashed, you should have the payment? - nope, no human (except the IRD it seems) keeps records that long.</p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">4) What if it had been a larger amount? one day you where happy with nice savings, looking to buy a house. Next you are wacked <span lang="en-US">from nowhere </span>and close to bankrupt with a huge bill from IRD, that you never knew about?</p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">5) How many of these bills are there? - are all Hong Kongers going to be paying back-taxes for issues over 10 years ago? Will you get one every year?</p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">6) Is this some kind of computer glitch? </p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">7) Was someone pocketing the cash that long ago? and the system has only just been picking it up? Is there some kind of Superman fraud going on here....?<br /></p> <p style="margin-left: 40px;"> </p><p style="margin-left: 40px;">8) How on earth could they justify this? My friend has been paying tax every year for the last 15 years, so it's not like they did not have her address..</p><p>Oh well back to trusting our intelligent overlords..<br /></p><p><br /></p> </div> PHP developer Job in Hong Kong 2007-09-18 14:20:00 <a href="">Article originally from rooJSolutions blog</a><br/> If you know anyone in Hong Kong (or who wants to move here and can get a visa) with PHP experience, and some linux experience (although not essential) , who is looking for full time job, feel free to contact me alan at qsolutions dot hk dot com.<br /><br />This is a permanent job, working with me in a small company based in Central. The projects are varied and if you can program in D, C or any other language there are even more opportunities.<br /><br /><br />