mayvelous

Me, Myself and Mayvelous

Archive for the ‘Work’ Category

Licenses.licx and VSS

In our current project, we have to work with WinForms using VS 2005 and VSS as the project source control. There are two solid developers and one developer/Product Manager involved in the coding of this project. Our Product Manager suggests and prefers we use VSS rather than SVN for better source management (check in/out). As for us, developers (me and my bro), we had a great time using SVN in the last project and prefer to use SVN; nevertheless both of us are flexible and agreed to work with VSS after a few discussion. Things are fine when I focus on designing forms and my bro working on code behinds. But the problem arises when we start testing on a few forms, which need both of us to work on design view.

In VS2005 WinForm IDE, it adds or writes to the licenses.licx file whenever you use custom controls/third party controls such as Infragistic in your form. Though I’m not so sure, I observe that the licenses.licx file is not needed if you work entirely with normal winform controls, but with third party controls, it acts as a config file storing the references of the controls.

Once you add a project to VSS DB, the licenses.licx file is always binded since it’s part of the project property. You can check out the code just fine but when you work with the form design, you’re forced to check out the licenses file. If you don’t/can’t check it out, you can’t do anything to the form design. With VSS, it’s really a pain if one developer checked out the licenses file exclusively, others can’t do any design work on any of the forms. To solve the exclusive checkout on licenses file, we tried to exclude the licenses.licx from the project and let it stay in local folder. Unfortunately, the file itself is part of project property and once it’s excluded, it loses the references as well. For that little experiment, I’ve lost two of my form designs and have to start all over; thank god, they were just small forms. With that failed experiment and out of ideas, we searched for the solution on the web. Found out that it was a known issue for VS2005 IDE and the fix would only available with the next release of Visual Studio. The only work around they suggest so far is to use VSS multiple check out mode.

We don’t want to use Multiple check out mode in our VSS DB for:

  1. VSS doesn’t provide individual file multiple check out mode but for the whole DB,
  2. There are a few careful steps to take before checking back in the multiple check out file. (You cannot check in directly. You must get latest on that file to ensure you get different versions from other developers to merge the file then only you can successfully check it back in.)
  3. VSS merge is a real pain and should I would never trust it. Unless ofcos’ you don’t care about losing some of your codes or have a separate backup, go a head and try it out.
  4. There is the need of source control administrator for merging files.
  5. And again, don’t trust VSS Merge and can’t rely on it.

But untill the next VS release, it’s the only possible way so we don’t have a choice but to use that method. Don’t have time to dig up properly either. So gonna stuck with this problem for the whole project. It’s just making my life miserable. *sign*

Readings: MS Feedback | Forum Q&A

It Stinks!

Talk about OHS in work environment, our office stinks! I mean really really stinks, the real rotten dead rat kind of stinks. It’s been stink for two whole weeks now. First we thought someone in the office didn’t take a bath but obviously it shouldn’t stink that much. We searched for a dead rat but till now in vain. Then we concluded it must be the air-condition problem. So we called the technician to check. He changed the filter and sprayed aerosol. The smell disappeared for a while and back again as usual. The problem is some people get the rotten smell and some don’t. It might depend on the air circulation in the room. Anyway, I’m one of the most unfortunate ones in the office for I have to work with that rotten smell for two weeks already plus that stupid AC is too cold for my liking. Occasionally (quite a lot this week) people are yelling and arguing and throwing and banging things around me. Headache and suffocation, really spoiling my mood!!!

Updates:
On the third week of despair, we’ve finally found out the source of the problem. It’s a dead rat after all. The smell has been spread out the entire place and everyone starting to dig up the drawers and junk mess. Found out that the rat was on the table, behind the servers all tangled with wires. It must have gotten an electric shock.

Ironic enough, we found it behind Zatlite’s desk; he has been desperately searching for it without success last week. Today with the help of the rest of the gang, get hold of the rat.
Pheeeww!!!

  • 1 Comment
  • Filed under: Personal, Thoughts, Work
  • Salary Talk

    Scenario: The gangs are talking about salaries at USP (University of South Pacific).

    X: These gangs at USP, their base salary is 80K.
    Z: They are ripping off students. Filthy rich.
    X: What if all of us salary is 100K?
    Y: Fiji is not that rich.
    X: I’m just saying…what if our IT team salary is 100K? Everyday pizza…”Z” will be twice that size.
    Z: How Rude!!
    (* Chuckles *)
    X: Haha I’m just joking.

    Thought: The higher the salary, the better/more food in take, the bigger your size will be.

    TortoiseSVNOie Turtle turtle, little tortoise, kuchi kuchi kooo…
    Oh hello, I’ve just adopted a Tortoise recently. You see, we use to play with this creature called VSS before, but it got wild from time to time and the guys don’t like it much. I don’t like it in the beginning too. I did strangled and fist-fight with it for many times. But the thing is, you only need a bit of patience and time to tame him down. Once I start petting and playing with it, I tend to understand it’s tender part as well as bewilder sides. As you all know, everything has its own pros and cons; our VSS rode a bumpy road and came as an arse but it has soothen out after a while. At least for me, I’m on fair term with him.

    TortoiseSVN

    Now I found a new pet. It’s really a sweet and gentle thing to start with. It says “Hello” and wags a little tail. Oh just so cute!

    SubversionBefore you start with the tortoise, you have to know its family tree; the big fat “Turtles” – Subversion (SVN) evolved from their ancestors called CVS back in ice-age. I’m not interested in CVS but I’m very much interested in SVN and how the little TortoiseSVN communicates to its parents.

    So I did a bit of research on Googology and started learning about the whole Tortoise family and their neighborhood. So here we go…

    What is SVN?

    Subversion is an open source application for revision control, is a replacement for CVS. The goal of the subversion project is to build a version control system that is a compelling replacement for CVS in the open source community.

    Subversion’s Features (# Parent Site) (# Wiki)

    What operating systems does Subversion run on? (# Portability)

    All modern flavors of Unix, Win32, BeOS, OS/2, MacOS X.

    Subversion is written in ANSI C and uses APR, the Apache Portable Runtime library, as a portability layer. The Subversion client will run anywhere APR runs, which is most places. The Subversion server (i.e., the repository side) is the same, except that it will not host a Berkeley DB repository on Win9x platforms (Win95/Win98/WinME), because Berkeley DB has shared-memory segment problems on Win9x. FSFS repositories (introduced in version 1.1) do not have this restriction; however, due to a limitation in Win9x’s file-locking support, they also don’t work in Win9x.

    To reiterate, the Subversion client can be run on any platform where APR runs. The Subversion server can also be run on any platform where APR runs, but cannot host a repository on Win95/Win98/WinMe.

    It’s not necessary to set up Apache to use Subversion on the client sides.If you just want to access a repository then can use subversion client such as TortoiseSVN to integrate with the server. Only when you want to host a networked repository then you have to set up on Apache2 or an “svnserver” server. More info see FAQs (#)

    What is TortoiseSVN?

    It’s a free open-source client for the Subversion version control system, implemented as Windows shell extension. TortoiseSVN manages files and directories over time. Files are stored in a central repository. Its immediate ancestor was TortoiseCVS which talks to CVS server. (# Doc)

    TortoiseSVN’s Features (# Doc)

    • Shell integration
    • Icon overlays
    • Easy access to Subversion commands
    • Directory versioning
    • Atomic commits
    • Versioned metadata
    • Choice of network layers
    • Consistent data handling
    • Efficient branching and tagging
    • Hackability

    You can also integrade with Visual Studio.net using this tool called AnkhSVN. It is a Visual Studio .NET addin for the Subversion version control system. It allows you to perform the most common version control operations directly from inside the VS.NET IDE. Not all the functionality provided by SVN is (yet) supported, but the majority of operations that support the daily workflow are implemented. (#)

    I think this is all for today’s learning about my new pet. I’ll add more detail on how to feed things and teach your pet A,B,C,D later.

    So you want to adopt a Tortoise too? Here are where you can get it from and how to look after it.

    # Get Subversion here
    # Get TortoiseSVN here.
    # Download AnkhSVN

    Developer

    Whenever people ask for my job title, I have to stop and think for a while. I am not sure what exactly my job title is. I got a few documents saying different job titles for me. One as Analyst Programmer, another as Web developer and yet another as Software Engineer. Since I prefer working with webforms than winforms, I answer myself as a webdeveloper. What exactly am I? I’m still figuring out. May be I’m just a “Developer” among millions of “Developers”. Developers Developers Developers Developers Developers

  • Comments Off
  • Filed under: Aside Notes, Development, Software, Technology, Thoughts, Web, Work
  • Me and the IT Team

    The IT team I’m working with at the moment is made up of very young and cheerful youths in their mid 20s. They do numerous daily routines such as maintaining websites, reports, support calls, tech job such as fixing printers and whatever people ask them to help with. Most of the time, guys are running around different departments and picking calls. Very few times, you’ll find them sitting at their desk. They do shifts and some stay up really late to finish their work. Though they are busy, you will find them cheerful, always ready to make a joke and are quite loud. Sometimes they would pick on each others, calling names and saying bad things against each other. They are doing it just to amuse themselves during the busy hours and bring up team spirit.

    I enjoy working with them, they amuse me most of the times and would never get bored listening to their chatters. Indeed, it’s a good team and working environment (except for closely packed room).

    The followings are some of their conversations I picked up today:

    Playing Music
    Scenario
    :The guy was playing some instrumental music and others starting complaining at him.

    X: May, if this disturbing you, let me know Ok? For the rest of you, you got no choice.

    May: It’s Ok.

    The Rest: Wow Vayah, Like that huh!

    X: It’s always been like that!

    (*Laugh*)

    ID Card Idea.
    Scenario:
    The guys were discussing about their new ID card design.

    X: Hey who’s the best graphic designer here? What about the layout?

    (One guy (Y) went up to the board and started drawing)

    Y: Let’s make it like this.
    We can put our logo here.
    Our address at the bottom
    Name here
    Photo here
    Then we can add Shimmering stuffs around here.

    X: What’s the shimmering stuffs?

    Y: You know, some sparkling things. Something like…in nightclubs. The shining stars and the sparks.

    Z: Oh rite, put some neon light balls and some dangling stuffs at the bottom of the card.

    Y: Yah then we show it to everyone – this is our ID card. Auu very attractive.

    Z: Haha, hey make it as Business card. Everyone wanna have one too.

    (*Laugh*)

    Spy
    Scenario
    : The guys were gossiping about something in quite low tone

    May: Alrite guys, I’m off

    X: Auu, there she go. You know what, don’t talk around May. She’s a spy from Datec

    May: What? Spy?

    Y: Oh yah becareful with your confidential information. May is watching.

    May: Haha yah I’m a spy. Professional Spy

    May: May, James May – 0007 here.

    (*Laugh*)

  • Comments Off
  • Filed under: Conversations, Friends, General, Humors, Life Style, News, Thoughts, Work
  • LLBLGen vs CodeSmith

    Comparison between LLBLGen Pro and CodeSmith tools. I’m very new to both so the following points might be completely wrong. So correct me please and do fill in more.

    LLBLGen CodeSmith
    O/R Mapper + Code Generator Template based Code Generator
    Uses Parameterized Dynamic Queries Mainly Stored procedures
    Cost license fee,
    Need to buy template studio for custom template creation/management.
    Free (console version)
    Comes as templates so add/update or manage as you wish.
    On-fly code generation, you don’t get to see templates or whatsoever. Gives control over the whole process, top-bottom, as they are managed by individual templates
    Does not create DB schema/generation. Creates the whole DB structure ie. Storeprocs, triggers, tables, functions etc
    N-tier generated with one go ie. If you change something in DB, you just regenerate the llblgen project and all files get updated. Individual template/batch file generation ie. You need to run B&D batch, channel batch etc one by one to get update files across 3 layer solutions.
    No webservices, remoting or channel server. Just uses classes and collections – entities, typelist, typeviews etc Can add as much layer separation between DB end and UI end. Can manage as you wish just by working on templates
    Less code – 2 projects, 1 solution More code, some redundant – multiple projects, 3 solutions
    N-tier project structure
    - Database Generic
    - Database Specific
    - UI
    (2 types: Adapter based or SelfServicing)
    N-tier project structure
    - Business and Data
    - Public Channels
    - Presentations
    (Add more as you wish)
    Do sorting, filtering, grouping, paging, all DB queries by a few class calls. (Dynamic queries) Need individual storeproc for each function. Adding one function needs to do individual updates for all projects and across solutions as well. Extensive use of storeproc.
    It is n-tier but basic multi tier structure which separate Business data code from UI codes. Advance/better n-tier architecture. Greater security and more control over each layers.
    Easier code generation + usage + less error generation. Need proper setup or you’ll get tangle in between. Small error in your base template will affect the entire project code.
    You write very little code ie. Only need to write for UI code. You have to write all the codes for your based templates if you don’t already have templates in hand.
    Provide .net 1.1, and .net 2.0 classes, ready to use and choose whichever you need. No .net 2.0 codesmith templates for us yet. Can use third-party templates but it will cost us.
    It doesn’t require dotnet framework and work independently. Uses dotnet framework as main backbone.

    # References:

    # Debate: O/R Mapping or Code Generation : Lots of discussion going on there in the reply threads.
    # Your Favorite O/R Mapper? : A discussion on O/R Mappers
    # CodeSmith Rocks! | When code generation goes bad…
    # LLBLGenPro vs CodeSmith w/ .netTiers

    Flickr Photos

    Downloads

    Twitter Status


    Goodie Links


    Mayvelous Friends


    Text-Link-Ads
    WidgetBucks
    VideoHive
    Chitika
    AdBrite

    I'm an Author for Global Voices

    Archives