123-reg tucows .com domain name registration woe

Posted by | Project | No Comments

Some interesting Internet joojoo going on with a domain name I’ve recently taken stewardship of. The website shetlink.com is effectively offline and has been since last Thursday 31st October for many ISP. It is now completely offline as ISP renew their DNS.

The domain was re-registered with 123-reg and auto-confirmation received on Thu, October 24, 2013 at 05:20 but, something went wrong with 123-reg’s confirmation to tucows; the TLD (Top Level Domain) registrar in the process. The garbled understanding I have at this point is that tucow’s were in the process of updating their registry and the shetlink.com domain was to be moved into a new registry system 7 days prior to it’s renewal; when it was still alive and kicking in the world of DNS propogation.

From reading the T&C’s of the domain purchase both companies effectively have written off any liability from the point of purchase if anything goes wrong. Well that’s fine if it’s my own site posting lovely pictures of kittens or weird meme’s that nobody but my second cousin 3x removed looks at but, when it’s a site that has circa up under 30,000 unique visitors per month things become an issue!

Still waiting … still waiting … still waiting …. no news … what is going on?! The craic of DNS “Ooh it’ll take maybe x hours/days to work” does not cut it in this situation! I want to know exactly what has gone wrong. Have asked .. any response to that question!? Hmm …

—————————–
UPDATE

By all accounts 123-reg are moving all their .com domains away from the registrar tucows; whom they’ve been using, to a new outfit called domainbox. Domainbox are part of the Host Europe Group of which 123-reg are affiliated. This transfer should have taken place 7 days prior to the domain renewal but, it didn’t, and still hasn’t!

Magento – SQLSTATE[HY000]: General error: 1025 Error on rename of – report_compared_product_index and report_viewed_product_index

Posted by | Reference | No Comments

SQL error when attempting to upgrade Magento across 1.4.2 –> 1.7

/app/code/core/Mage/Catalog/sql/catalog_setup/mysql4-upgrade-1.5.9.9-1.6.0.0.php

Run the following SQL to drop the following two tables and recreate as key violations from previous versions across to 1.6 causes errors.


/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Table structure for table `report_compared_product_index`
--
DROP TABLE IF EXISTS `report_compared_product_index`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `report_compared_product_index` (
`index_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`visitor_id` int(10) unsigned DEFAULT NULL,
`customer_id` int(10) unsigned DEFAULT NULL,
`product_id` int(10) unsigned NOT NULL,
`store_id` smallint(5) unsigned DEFAULT NULL,
`added_at` datetime NOT NULL,
PRIMARY KEY (`index_id`),
UNIQUE KEY `UNQ_BY_VISITOR` (`visitor_id`,`product_id`),
UNIQUE KEY `UNQ_BY_CUSTOMER` (`customer_id`,`product_id`),
KEY `IDX_STORE` (`store_id`),
KEY `IDX_SORT_ADDED_AT` (`added_at`),
KEY `product_id` (`product_id`),
CONSTRAINT `FK_REPORT_COMPARED_PRODUCT_INDEX_CUSTOMER` FOREIGN KEY (`customer_id`)
REFERENCES `customer_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_REPORT_COMPARED_PRODUCT_INDEX_PRODUCT` FOREIGN KEY (`product_id`)
REFERENCES `catalog_product_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_REPORT_COMPARED_PRODUCT_INDEX_STORE` FOREIGN KEY (`store_id`)
REFERENCES `core_store` (`store_id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Table structure for table `report_viewed_product_index`
--
DROP TABLE IF EXISTS `report_viewed_product_index`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!40101 SET character_set_client = utf8 */;
CREATE TABLE `report_viewed_product_index` (
`index_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
`visitor_id` int(10) unsigned DEFAULT NULL,
`customer_id` int(10) unsigned DEFAULT NULL,
`product_id` int(10) unsigned NOT NULL,
`store_id` smallint(5) unsigned DEFAULT NULL,
`added_at` datetime NOT NULL,
PRIMARY KEY (`index_id`),
UNIQUE KEY `UNQ_BY_VISITOR` (`visitor_id`,`product_id`),
UNIQUE KEY `UNQ_BY_CUSTOMER` (`customer_id`,`product_id`),
KEY `IDX_STORE` (`store_id`),
KEY `IDX_SORT_ADDED_AT` (`added_at`),
KEY `product_id` (`product_id`),
CONSTRAINT `FK_REPORT_VIEWED_PRODUCT_INDEX_CUSTOMER` FOREIGN KEY (`customer_id`)
REFERENCES `customer_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_REPORT_VIEWED_PRODUCT_INDEX_PRODUCT` FOREIGN KEY (`product_id`)
REFERENCES `catalog_product_entity` (`entity_id`) ON DELETE CASCADE ON UPDATE CASCADE,
CONSTRAINT `FK_REPORT_VIEWED_PRODUCT_INDEX_STORE` FOREIGN KEY (`store_id`)
REFERENCES `core_store` (`store_id`) ON DELETE SET NULL ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=1348756 DEFAULT CHARSET=utf8;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40101 SET character_set_client = @saved_cs_client */;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;

Samsung LE37M87BDX/XEU LCD TV – AUO 55.37T04.005 T-con board

Posted by | Project | No Comments

Watching TV one night at the weekend the screen began to flicker and the colours distorted that the picture didn’t look unlike a colour photograph negative.

I cringed but, thinking I had a John Lewis 5 year warranty still on the TV, I wasn’t overly worried. Monday came and I trotted off to ask them about repairs. However, lo and behold should the warranty not have run out on the Saturday! John Lewis wouldn’t and couldn’t see past themselves and I left with shrugged shoulders and a mission afoot.

After much forum searching and reading I concluded that my TV’s symptoms fitted mostly to the description of a fault with my T-CON board. “Right! Let’s buy one of those” I thought but, had a little bother in finding a suitable match.

AUO 55.37T04.005 T-con board

The joys of eBay! Finally finding a matching T-CON I hurriedly purchased said board and awaited it’s timely arrival. On fitting, which was a tad fiddly but not overly cumbersome, I switched the TV on for a test. *fffpt* it went and I really had thought I’d fused the whole thing. Though, turning off the TV and on again it fired up to a great picture and I left it on in the background to make sure it wasn’t going to burst into flames at any point!

You have to just love fixing things! :)

Magento SSH maintenance

Posted by | Reference | No Comments

What’s this all about? Well there’s various forum posts and great tips out there for maintaining your Magento installs. I’ve collated some of these together below for my own purposes and ease of access:


rm -rf downloader/pearlib/cache/*
rm -rf downloader/pearlib/download/*
rm -rf var/cache/*
rm -rf var/session/*
rm -rf var/report/*
rm -rf var/tmp/*


TRUNCATE log_customer;
TRUNCATE log_quote;
TRUNCATE log_summary;
TRUNCATE log_summary_type;
TRUNCATE log_url;
TRUNCATE log_url_info;
TRUNCATE log_visitor;
TRUNCATE log_visitor_info;
TRUNCATE log_visitor_online;
TRUNCATE report_event;
TRUNCATE catalogsearch_fulltext;
TRUNCATE catalogsearch_query;
TRUNCATE catalog_compare_item;


chmod -R 777 lib/PEAR
./pear mage-setup
./pear upgrade -f magento-core/Mage_All_Latest-stable
chmod 550 ./mage
./mage mage-setup .
./mage sync
./mage list-upgrades
./mage config-set preferred_state stable
./mage upgrade-all --force


find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;

php -f index.php

Business benefit of ensuring fit for purpose presentation layer

Posted by | Ideation | No Comments

“What exactly is the business benefit of doing that?”, a cry oft heard.

Well, what exact business benefit is there for not ensuring the presentation layer is ‘fit for purpose’? To build a “web” based application meeting all specific requirements and policies in regards scalability and the like – then ignoring its output “just because” it does what it does and appears on the surface to render as it should …. ?

Following modern techniques, ensuring your presentation layer is split against semantic markup and seperate styling gives the ability to alter the way an applications output looks and feels merely through editing CSS stylesheets in the presentation layer. Business benefit? You don’t have to raise the same level of change requests and prioritise development work to back-end developers nor do you have to ensure you’re within a release schedule several months away – where the focus will be on ensuring business layer upgrades requested by the business take first priority! Nor is there a need to edit deep down in the business layer at what are most likely multiple points to alter inline styling.

A benefical frontend development strategy creating real cost savings

Why? Because, it can be done by front-end developers and can be done in a fast turnaround with next to no cost leaving backend developers prioritising and developing workstreams providing “real” long term business benefit without wasting precious effort and time! User interfaces can be improved/tweaked adhoc providing end-user centric benefits when required without conflicting with underlying business logic or data storage.

For instance, improving end-user input through user experience (UX) best practices without additional requirements of backend development and or error-checking and processing by simply altering the user interface can pay dividends further downstream! Improved data quality and removing the need to re-key information or use generally poor scrub & match automation delivers on-the-ground business benefits through no cost. The only definite requirement is to ensure alignment of a presentation level release schedule fitting with programmatic releases if required; or seperate them completely!

Making certain frontend web industry standards are applied is a forward planning strategy producing real cost and time savings!


First published on yaduk on Apr 30, 2009

Internet Explorer 6 is not yet dead! IE6 is alive!

Posted by | Ideation | No Comments

You’d be absolutely amazed at how many people are still using Internet Explorer 6! One of the hardest things I’ve had to explain is this very thing; some people just don’t comprehend anyone can be on anything less as the latest bleeding edge browser since they are!

There are however, many companies still using this very browser, not least due to the massive undertaking that it might be for them to upgrade away from it. For instance, think mission critical legacy applications working fine right now – how can senior colleagues be assured they’ll still work as intended after any upgrade? Long lengthy expensive test plans and presentation layer upgrades prior to any painful upgrade most likely.

Think then of the vast swaith of potential website users sitting in offices browsing the web in their lunch hour being discriminated against?

Should Internet Explorer 6 not be part of your ‘progressive’ web development you’re quite probably damaging your own clients revenue potential! Not sure they’d like that if they knew ;)


First published on yaduk on Nov 19, 2009

UPDATE

I myself have begun to narrow my view of IE6. Though there are still many coporporate environments with Microsoft support contracts to enable them to still use IE6 – HTML5 and the vast swaith of exciting things that can now be achieved with modern browsers HTML5/CSS3/Javascript means supporting decrepit browsers is nothing more than a chore.

So what’s this site do? IE6 / IE7 you get the default skin. Any other browser … this skin!

Building An Online Community – Organisational Intranet

Posted by | Information Architecture, Intranet | No Comments

You may find that colleagues, especailly senior colleagues are cautious over the implimentation of so-called community building or collaborative software. However, with the correct departmental governance and policing, and best practice of this area, community software can be utilised to its full benefit as a useful and integrated business tool.

Community building software can promote organic connections between colleagues. This will, as a by-product, act as a structured storage mechanism for unstructured corporate knowledge which otherwise would only be held between individuals in an un-retrievable unstructured manner.

These types of electronic storage mechanisms are used to great effect within industry leading technology companies such as IBM and Microsoft. Organically structured groups of colleagues are able to liaise from a single recordable point removing the obvious issues of geographical displacement. There is also an instant removal of cottage industries updating and managing phone lists, structure charts, etc. The community area can remove pressure from traditional means of business communication such as email.

Software such as Microsoft SharePoint MySite’s potential, for instance, can be realised if embedded within already established business processes. For the majority, people associate social networking with Internet based networks such as Facebook and MySpace; certainly at the opposite end of the spectrum and barely recognisable as productivity tools! The potential though to improve performance and cut costs is certainly possible should such an Intranet community be used productively and ring-fenced in a business setting.

The key to successfully utilising social media at work lies in comprehending it is very different in nature to its vaguely similar consumer cousins. With a different approach social networking can exploit the simple rationale pulling individuals into consumer resources: that of a simple purpose! Business social networking requires a defined business purpose with specific usage guidelines providing real leverage such as building teamwork, organisation around projects, and organically building a corporate knowledge base.

A community Wiki building a corporate knowledge base, for instance, categorising and built from what would otherwise be unobtainable unstructured data kept in varying hetrogeneous systems, paperwork, peoples heads, can be fashioned to store searchable data and information access to the entire organisation – of what would generally only be available to the few.

Historically, teamwork built through staff meetings, company team building workshops, team nights out, departmental parties, etc. are face-to-face interactions. The flip-side can be an electronically stored impressionistic sense of business activity formed around colleagues actively publishing activities around them. Largely self-organising and leaving a permanent organic record of communication around, say, a project otherwise not existing, can generate implicit awareness to colleague work groups.

Ultimately this can replace, but probably not in its entirety, traditional communication mediums such as the email list which lacks structure and is difficult to manage. An Intranet social network on the other hand provides many-to-many communication within a structured and collaborative environment.


First published on yaduk on Nov 16, 2009

Business Strategies, Information Systems and People: Holistic Approach

Posted by | Information Architecture, Intranet | No Comments

Information Architecture and Information Retrieval

Intranet information retrieval requires more often than not implicit end-user understanding to the nature and location of information sought since architecturally information organically mirrors organisational layout rather than information ‘typing’. Semantic linkage and intelligible meta data unfortunately take a back seat. As a result it is commonplace for “Intranet” users to consider Intranets an unresponsive technology in respect to finding and utilising information in their day to day jobs. One of the tenants to having an organisational Intranet in the first place!

For the majority, Intranet information retrieval issues are born from how individuals have learned ‘web technology interaction’ from the Internet. Bringing learned behaviours with them, end-users directly influence the effectiveness of organisational Intranets. For developers, Intranets should then be considered essentially as “socio-technical” devices requiring understanding of end-user interaction in the dissemination and retrieval of information.

It must be said that Internet users have a humungous resource from which they can narrow down something of interest or a link to a site of value in their quest. Within an Intranet environment this same search strategy fails due to the need for a defined information nugget rather as a rough guestimate.

Intranet Strategy – An holistic approach

Varying academic studies detail the extent of which Intranet implementation and use within individual organisations has significant implications for organisational performance. A key component in that performance is “technology adoption in the workplace [and its acceptance being directly] influenced […] individual differences, social influences, beliefs, attitudes, and situational influences.” (Lee, S., & Kim, B.).

Evidence that organisations are “cultures, tribes, political battlegrounds, networks, […]” (Checkland & Scholes, 1990); non-deterministic open systems, directly refutes the traditional deterministic approach to information systems development.

Organisations generally are viewed as “unitary systems with coherent purposes and goals rather than collections of people with many (sometimes conflicting) concerns”, (Clarke & Lehaney, 1997), in turn influencing the traditional approach that systems are – “autonomous purpose-directed systems […] with predetermined goals or sets of goals”, (Introna, 1996). These “hard systems” define objectives, modelled and measured against declared criteria, in an attempt to fulfil information needs and organisational goals.

“Soft systems” thinking, in comparison, gives credence to user perceptions and interaction, allowing us to understand underlying causal factors in Intranet complexity and their use. Examining and understanding these factors and their impact assists movement towards effective distribution and retrieval of information.

The intrinsic qualities of organisations generate a complex relationship between information creation, dissemination and use by end users – expectations of success of business strategies, information systems and people themselves disseminating and retrieving information impact on the implementation and use of an Intranet.

Important Intranet Considerations

Information systems are socio-technical systems requiring an understanding not only of technical/information infrastructure, but in the case of an Intranet, the end-user and how they inherently interact with the interface that is an Intranet.

Taking a view of “human computer interaction” in not only technology but also the overlying information, the process of Intranet information systems development and their inherent issues can much more readily be appreciated.

The predominant influence on Intranet use is learnt a priori from “outside-of-organisation” use of the Internet. When users come to Intranets, they do not usually experience the whole resource, but sub-sections of it, the parts they frequent regularly. It is therefore, imperitive that Intranets be designed with these factors in mind, limiting the scope of the resource as it is presented to each individual user, yet bringing those parts to the fore that are required habitually.

Significantly, a causal factor of Intranet failure is a distinct lack of process governance in content handling with the accuracy and relevance of information often going unchecked. Consequently content structuring ends up disparate across sub-sections leading to contrasting navigation systems independent from content types which in turn compounds retrieval issues.

The inability then to find information directly impacts “carrying out tasks and activities” and ultimately reduces productivity around the use of information disseminated through an Intranet. Addressing user expectations in their use of an organisational Intranet will aid in their alignment with any overall organisational strategy.

What are these? Well … email to find out! Taking stock of HCI: Human Computer Interaction against human interfaces is key to any ‘application’! – Hmm? What’s an Intranet or Internet interface? …… Hmm..!!?

Checkland, P. & Scholes, J. (1990). “Soft systems methodology in action“. Chichester: John Wiley & Sons.

Clarke, S. & Lehaney, B. (1997). “Critical approaches to information systems development: Some practical implications“. In Stowell, F., Ison, R., Holloway, R., Jackson, S. & McRobb, S., (Eds.), “Systems for sustainability: People, organisations and environments“, 333–337. New York: Plenum.

Introna, L. D. (1996). “Notes on ateological information systems development“. Information Technology & People, 9, 20–39.

Lee, S., & Kim, B. (2009, January). “Factors affecting the usage of intranet: A confirmatory study. Computers in Human Behavior”, 25(1), 191-201. Retrieved January 13, 2009, doi:10.1016/j.chb.2008.08.007


First published on yaduk on May 31, 2009

Magento Upgrade 1.3.x to 1.4.x Custom Theme Issues Fix

Posted by | Reference | No Comments

From reading through the blogosphere and all the varying Magento forums its obvious lots of people are having issues in upgrading from Magento 1.3.x to 1.4.x due to custom theme problems and errors. I was no different! Who would have thought these things could be so difficult!?

After several attempts at upgrading Magento to 1.4.x failing dismally I set about toying with a development site until I could figure out what was what?! Its detailed everywhere that your 1.3.x theme will have to be re-written to work with 1.4.x but I’ve managed to get a simple enough process working for me in upgrading Magento 1.3.x to 1.4.x and keeping my custom 1.3.x theme working in 1.4.x without any re-development at all! So here goes:

  1. Log into the Magento Backend Admin Panel and remove products that you have placed in more than one category. Just have your products in one category otherwise these cause errors after the upgrade.
  2. Turn off SEO url rewrites (System >> Configuration >> Web >> Search Engines Optimization)
  3. Turn off cache management (System >> Cache Management)

The following from CrucialWebHost’s help site is perfect:
A little cleanup first:

rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*

Set the permissions on the pear file so we can run it:

chmod 550 pear
I then cleaned out the cache myself manually to be sure:
rm -Rf var/cache/*
and again from the CrucialWebHost:
Initialize the PEAR channel just in case:

./pear mage-setup .

And then we can upgrade:

./pear upgrade-all

If it tells you that there's Nothing to upgrade, you'll need to do this instead:

./pear install magento-core/Mage_All_Latest

Lastly, we need to clear out any temporary and cached data. These commands will be done via SSH in the staging directory.

rm -rf downloader/pearlib/cache/* downloader/pearlib/download/*
rm -rf var/cache/ var/session/ var/report/ media/tmp/

And then reset our file and directory permissions:

find . -type f -exec chmod 644 {} \;
find . -type d -exec chmod 755 {} \;
chmod 550 pear

After this point delete everything in the following to clean out the backend cache (you need to do this or you will get errors when saving new configurations and probably logging into magento admin after upgrade too)
rm -Rf app/code/core/Zend/Cache/*
Log into your new 1.4.x Magento Backend Admin Panel from index.php/admin/

  1. ReIndex Data on everything (System >> Index Management)
  2. Turn on SEO rewrites  (System >> Configuration >> Web >> Search Engines Optimization)
  3. Turn on Cache Management (System >> Cache Management)

From this process you have theoretically upgraded your Magento installation to the latest 1.4.x version of Magento and have your custom theme working fine. Or at least I have, I can’t guarantee that this process will work for everyone out there?!

Good luck.

Error text: Nameserver doesn’t exists in the registry. 123-reg

Posted by | Reference | No Comments

Had an interesting experience with 123-reg and trying to apportion nameservers to domains always flagging back:

Setting nameservers to ns1.domain.tld and ns2.domain.tld
Please wait…
Nameservers for domain.net were not changed to
ns1.domain.tld and ns2.domain.tld
Error text: Nameserver ns1.domain.tld and ns2.domain.tld doesn’t exists in the registry

A quick scoot around their help centre didn’t flag back any answers for anything as complicated. So resorting to google I figured it was 123-reg hadn’t parsed through my details to all their associated registrars. Not immediately obvious from the error message.

The answer was to phone up 123-reg support and detail they needed to make sure my domain and nameservers were registered with all their associated registrar registries.

3rd time lucky on phone and 5 days later I managed to get ‘Ricky’ who knew exactly what I was talking about straight away and didn’t pawn me off with talk of DNS propogation etc. etc.  He ensured my .uk.net domain and nameservers were registered properly with Central NIC and got back to me very promptly. Thank you Ricky.

So all is well and hopefully this might help anyone else in the same situation.


First published on yaduk on Feb 2, 2010