Skip to main content

New job, new things to learn.. gotta get in line..

It's been 3 weeks since I've started my new job at a big corporation. Transition into this new job was not easy and even now there is still a lot of pain of adapting. The biggest source of the pain? WINDOWS!!! T.T

Being a big corp, it's almost a requirement that your reliance on all things microsoft has to be solid and deep rooted. Of course we have open source equivalent for most of the stuff but the pressure is on for me to perform and to present some tangible results as soon as possible thus I barely had time to put some basic best practices in place. But finally after 2 days of googling and tweaking, I've got a small pc running ubuntu server serving trac for ticketing and serving out our main mercurial repo. We don't even have the basic infra yet and still management says "these are things are nice to have, but you need to deliver those reports soon. Our deadline was last month".

Then when starting to do development, I start to see how deep the rabbit hole goes. Never mind about the ton of spaghetti code we have to tangle with, database management (this is just our internal development database mind you) consist of importing excel file into access and using odbc to push those tables to ms sql server. Ha. Seamless I tell you.. >.<

So of course there is nothing in the open source world that can match that kind of right click send seamlessness. So for now I concede I have to use windows. At least until most of our database stuff is fully in the ms sql server and I can connect to that directly. But the pain of working in windows.. oh my.. Even looking for text in all the source code is not as easy as 'grep -ir something'. I think I miss grep the most. But of course I miss all the rest of our little treasure trove of command line tools to make dev so much easier. How I wish I had a 'tail -f' in one window of terminator while I restart the server and redo the query in another.

But I'm already here now and I should square my shoulders and get in line.

Some interesting thing I've learned already is how to set the default gateway for windows for example. You just do a:

route change 0.0.0.0 mask 0.0.0.0

That is to change the default gateway if it already exists. Want to know whether it already exists? Print it out:

route print


And also for setting up tomcat6 cgi, edit the conf/web.xml file in the tomcat root directory. Inside there you would see already commented out parts for cgi config. Just remove tags from 2 parts:

<servlet>
<servlet-name>cgi</servlet-name>
<servlet-class>org.apache.catalina.servlets.CGIServlet</servlet-class>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<init-param>
<param-name>cgiPathPrefix</param-name>
<param-value>WEB-INF/cgi</param-value>
</init-param>
<init-param>
<param-name>passShellEnvironment</param-name>
<param-value>true</param-value>
</init-param>
<load-on-startup>5</load-on-startup>
</servlet>


*note - you should add the passShellEnvironment part to allow the cgi to use perl and stuff.
And from:

<servlet-mapping>
<servlet-name>cgi</servlet-name>
<url-pattern>/cgi-bin/*</url-pattern>
</servlet-mapping&gt


And then you have to change the conf/context.xml file to enabled privileged like this:

<Context privileged="true">


Once that is done you've got it made baby.. you can now download strawberry perl and awstats and have awstats even for a tomcat6 server. Follow the instructions here for more details: http://www.wrenbeck.com/flowbuilder/$$download.xsp/blog/3eab0461f928f/awstats_tomcat.html

Just one more note on changes to tomcat to enable awstats. You need to enable the combined log for it to work. For that edit the file conf/server.xml and at the end of the file you might find something like this:

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"
prefix="localhost_access_log." suffix=".txt" pattern="combined" resolveHosts="false"/>


Release it from it's remarked prison and change the pattern from "common" to "combined".

Learned quite a lot these past few weeks so I guess that's very good. Still have to use windows so that's pretty bad. But plus minus it all, it's still pretty good.

Comments

Unknown said…
welcome to the club, things can be rush, if they just drop you into a middle of a project.

now unless it is necessary, screw best practice, i only bring it when i got to do a new one
Blogger said…
Bluehost is ultimately one of the best hosting provider with plans for all of your hosting needs.

Popular posts from this blog

Dell Inspiron Mini 9

Yesterday went to Low Yat to buy my cousin a sub RM 1500 notebook. Of course with that kind of price tag it would have to be a netbook jelah. Anyhow, I was short on time so I didn't get to browse thoroughly. Just went for one quick round around level 2 and picked the one that I thought would fulfil his need. The thing is, as soon as I stepped out of the lift there was a shop that sold the new Dell Inspiron Mini 9 for only RM 1199. I was suprised. Just 1199. I couldn't believe my eyes. With original Windows XP and all. RM 1199. I thought there must be something wrong. Better survey first. So went around level 2. There was nothing that could match that price. Most of the other netbook from acer, asus and lenovo even was around RM 1600. So I decided I'll just go with the Dell lah. But to tell you the truth if I had money to buy for my own use, I'd go with the Lenovo Ideapad S10. Fuh.. she's one sweet mama... Smooth rounded curves, slim white profile. Pergh.. But anyway

First godot game published

I haven't published anything in google play for a very long time. I'm very happy to finally introduce my latest project to the public. It is a casual game called..... Add Block. Yeah.. The best original game name award coming right up. But seriously, try it out. Find in at the play store here . I love playing casual games on my phone. It's great to pass the time. But it doesn't really do anything for your skills. Or at least not anything for real life important skills (yes, I don't consider being able to identify the consecutive shapes or color as really important). So I decided to create one. So in this game, you practice your math skills. Find the adjacent blocks that add up to the total you need. So it's math, math is important right? Right?.... The levels are unlimited, the idea is that you keep on playing until you can't anymore. You'll die if you finally can't get the number of wins required to pass the level in time. You only have 100 se

Rendering template from string using thymeleaf in spring

Finally solved a very big problem for me... How do I render a page in spring framework that uses the thymeleaf templating engine? The string most probably will come from the database. After long hours of searching and trying, I've got it. First I've got a clue from this particular stackoverflow question . But following an example from there got me an error about class not found for ognl.PropertyAccessor. That solution was found here . So here's how I finally done it... First thing is to create a service where that service can be used wherever you need it in your spring app. @Service public class PortalService { private TemplateEngine templateEngine; private final static String TEMPLATE_LOCAL = "US"; private TemplateEngine getTemplateEngine(){ if(null == templateEngine){ templateEngine = new TemplateEngine(); StringTemplateResolver templateResolver = new StringTemplateResolver(); templat