Chan Ag

Rancher
+ Follow
since Sep 06, 2012
Merit badge: grant badges
For More
Cows and Likes
Cows
Total received
In last 30 days
0
Forums and Threads

Recent posts by Chan Ag

I think studying for Java Certification is a good place to start.

Not that I rate myself greatly in programming skill, but after writing code in PL/1, JCL, DB2 for about 5 years, studying for the certification did give me a decent start. Eventually I didn't write the test cause there were always more things to learn ( and they continue to be and will always be ) and taking up mock tests and the exam started seeming like a waste of time ( it's not a waste of time and actually may help you make a more streamlined progress in your learning but knowing about other topics became far more interesting to me then).

Books, trustworthy tutorials and discussions, the Oracle Java language specifications, and the community of Java programmers are greatly helpful. It's a different kind of a challenge to learn something new in mainframes because of the lack of resources and simulators so learning Java will be a lot easier in that respect I feel. But do not let the vastness of the topics to learn and understand discourage you. That way you will make constant progress.

Write a lot of code. Read a lot of code (yeah I mean it). Critique your code. And write better code next time. When you get a little comfy, critique your approach and design. It's still notebooks and pencil a lot of times. And let the community of experienced and helpful programmers guide you along the way. Someone helped them too.


7 years ago
I know it quite well how difficult it is to find answers to advanced mainframes questions.

If you are still looking for an answer on the EZASOKET API, perhaps it won't be a futile task to compile that information again and post that question again. Why not save that information somewhere so you can post it again without having to compile it again.

Also there is a forum called www.ibmmainframes.com that could be of help.

At times there are responses that don't make sense. Sometimes the response is by someone who does not understand what they are responding about. But if you want to get the maximum benefits of using a forum, I recommend using your own judgement of how to take a response or a suggestion. If it is applicable to your setup, let it be. In my opinion politely stating something is not applicable in your context is much better than saying the suggestion is made by someone who purposely wants to find reasons to close your question. Even if the other person had the intention of nitpicking on irrelevant things to get your question closed, I think the best way is to still listen to all feedback/suggestions and state it is not applicable because of reason X. I would certainly not recommend mentioning people purposely want to close your question.
9 years ago

Bear Bibeault wrote:

Chan Ag wrote: I don't understand how can you speak negatively about StackOverflow openly and get two likes.


I don't see how expressing a negative opinion about a site (or a technology, or a car, or a restaurant, or whatever else) is a violation of "Be nice". Now, if the post had been "Bear is a doo-doo head" or some other personal attack, that's a completely different matter.



What you have stated is interesting to know. Personal attacks directly or indirectly means people have stooped at really low levels. And when they do that, they are best ignored cause you can't tackle them without stooping at an even lower level.
9 years ago

Tim Cooke wrote:

Future developer wrote:Why is the poison pill going back on the queue? Are there more consumers?

-- No. You're sending future developers on a wild goose chase

.... and the other two questions and the reasons mentioned.



A poison in the queue should denote that the single producer of this system ( this producer object, consumer/consumers, this queue ) has terminated, not that there are more consumers. It is only the system manager's ( any controller kind of object ) task to manage the queue and the number of producers and the consumers as affiliates to the system. It is this manager that decides the life of the queue.


9 years ago
Following are my views ( obviously tailored/made mild because of the 'be nice' rule). I am a StackOverflow user as well as a CodeRanch user.

StackOverflow is not useless and my experience of using StackOverflow ( as well as Javaranch ) has been pretty pleasant. When you accuse something of a charge, wouldn't you at least back it with information that at least justifies a portion of your claims. I mean you have not even mentioned your relevant SO post here.

I wonder how your post managed to get two likes. If 'being not nice' is against rules and if we shouldn't even quote company names in jobs Discussion forum while 'ranting' about our workplace, I don't understand how can you speak negatively about StackOverflow openly and get two likes.

You say that asking a question that asks how to print HelloWorld is a silly question. I don't see that as a silly question.

Edit : Perhaps it's an apt MD post. Now I see how you got two likes.



9 years ago
Yes, it is a good practice the way I see it. POISON to me is not a consumable object -- it is a specific object with a very specific purpose ( you do the == check here ). It is something that is a part of the machinery you build and it indicates a clear purpose.
If you are ok with using a poison, I don't see why the consumer shouldn't be put into the queue again, if you have a remote possibility of having to adapt to multiple consumers in the future.

When I was trying to reason it long time back, I thought that a Consumer should only consume the queue elements. It should not produce the queue elements. Hence a consumer should not put the poison back into the queue. But if you are using a poison as a flag, you have already implied that a poison is a poison, not just any other consumable object.

I do not know why Tim Cooke does not recommend it. What I have stated is just my take on it.

Edit : Thanks, Campbell Richie. I shall use it next time.
9 years ago
And if you happen to use the PoisonPill ( make it static and final ) approach, have your consumers put the PoisonPill back into the queue, so the other consumers also get to know that the producer has terminated.
9 years ago
https://coderanch.com/t/614729/threads/java/Producer-Consumer-Thread

The above mentioned topic has a response ( I don't know how to link the specific post within a thread ) that has earned a cow. It has a really nice explanation about these control messages and the little things we must consider while setting up such a communication.

Personally I like the idea of a PoisonPill ( as suggested in the linked response ). But whether it can be used depends upon your project implementation.
9 years ago
Semi retirement -- there are no hard and fast rules governing what it involves. It just means you're probably doing easy jobs -- and easy here could be a relative term ( though not necessarily like say you have worked all your previous 20 years as an SME ( Subject Matter Expert ) in derivative trade and such so you could become a functional consultant or so cause understanding that stuff is easy for you ), or working fewer hours so you have a steady source of income. At the same time you have enough time to give to your family, or to pursue your passion. You live a laid back life.

Easy jobs could be anything. If you are a skilled musician, you could give part time music lessons in a music school. You could do part time consulting. It really depends on your interest and the demand in your area and what you are good at and what you want to do.

Anyone joining a promising early stage start up has decent chances of making big money. You could join as a developer, as a VP, as a manager, as a share holder etc. Generally these companies offer you stock options ( RSUs ) at the time you join and if these companies get listed in the public domain, and if their stocks do well, you might make big money.

There are also several companies that just offer stocks but don't go into public domain for several years and they like to call themselves a start up even though they have operated for as long as 10 years or more! So at the time an offer is made, it's good to do some research too. :-)

There are quite a few really promising start ups doing extremely well in India ( I'm guessing you are from India because of your name ). I could write names, but it must be against the rules I guess.

VCs are Venture Capitalists. Google about them.

Edit - Personal experience of working in a 10 year old start up warns me enough to consider a lot of things before joining such companies. We were working more than 10-12 hours a day. For several months. Every feature regardless of its complexity had to be developed ( including unit tested, minimal integration tested with new and old tests for the CI tool ) within 3-4 days. There were days when our team had worked for several days continuously and you are working cause every one else is working too. They pay extremely well but can squeeze the blood out of you. I mean not every company does that, but many of my friends in the start ups feel like I do. This is not a rant, just the hard truth. Sometimes I feel that 'agile' is the most abused word by many.











9 years ago
Chapter 8, Page 437 --

[a-fA-F] Searches for the first six letters of the alphabet, both cases.
So, for instance,

source: "cafeBABE"
index: 01234567
pattern: [a-cA-C]

returns positions 0, 1, 4, 5, 6



should be

returns positions 0, 1, 2, 3, 4, 5, 6, 7


Edit -- Just noticed that the authors have changed the pattern in the example from [a-fA-F] to [a-cA-C]. Not an erratum then.

Although retirement is far in my case ...



Everything said, it is important to plan for the retirement. Yes the retirement might not be near for you ( it a'int so for me too ), but it is not too late to plan for it ( the easiest way is to save enough and invest in something that will give you good returns ).

Forget retirement, you never know when the next recession might hit. And that's still not the worst.
9 years ago
Yea, the requirement that 'in it when some element is put then we can get different element' sounds vague. I'm guessing either the interviewer didn't frame the question well or perhaps the OP hasn't stated exactly what was asked.

The idea of adding an element and getting a different element as a result of adding an element sounds uncommon, if not weird. However if the interviewer just meant that the data structure should allow you to return an element at random ( any element -- in no specific order ) from the data structure, you could use a randomization logic for returning the element from any datastructure based on the linked lists ( the general term ) / arrays. You could even use a shuffling operation.

Why do you think you might require data manipulation for returning an item?
9 years ago
I've been playing badminton for the last few days. Before that it was daily morning walks, and running and hiking sometimes. Dance is a regular thing I do.

My way -- Do whatever you like. The best time is now. And listen to your body.


If you don't have the right running shoes now, don't wait for the weekend -- it may come after 5 days. Go for a walk in your walking shoes now. And for yoga, you don't need even the walking shoes. Yoga mat is good, but not a thing you absolutely require. The point is you must start now. Starting is the most difficult part. Once you have done that, the rest is easy.

There are times when you have not been able to exercise for like months. And then when you want to start, your brain decides it's better to start on a weekend because you don't have X or a Y. So you need to shop first on a weekend. And that weekend may never come. So starting now is extremely important I think, even if it is just for a few minutes. I don't know about others, but it has happened with me a few times. So now a days I know that the weekend excuse does not work with me. All I'm saying is applicable only to people like me who love to make the weekend excuse.

Start slow with what you enjoy doing. And you will want to do it the next day also. Gradually you will include the not so easy exercises also into your workout routine. That will happen some day. You will not have to plan for it.

I think morning walks are amazing. And if you have a partner or a friend who can accompany you, there is nothing like it. :-)

I have never really created exercise goals for myself. I think they can make me stressed. But there are people who like rules, goals, challenging your limits etc etc. And it works for them.

Keeping yourself well hydrated while you are working out is very important.
I think that we must listen to our body even while you're working out. If our body signals that we must stop, we must stop. Running excessively or doing any other exercise excessively is not good. I think running without the right shoes is not good for our knees.

Resistance training is extremely important -- both for men and women. And buying some weights/other equipment can really help.

Is there a sport or a specific activity you enjoy doing -- like playing badminton or tennis etc, or even dancing, swimming, diving.... I think they are great too.

Try not to skip meals. I think eating healthy food ( You are not cutting down on the amount of food you eat -- unless you eat too much -- you are just choosing what to eat) is extremely important. It's good to also eliminate those sugar substitutes ( I didn't say sugars ) from our diet. Most of those canned and packed food items are just the bad fats or something that will convert into the bad fat in one way or the other. It helps to start cooking for ourselves. Foods rich in vitamin C -- kiwis ( kiwis are a must on my breakfast table), oranges etc are good for our body. Nuts are good. I think it is good to keep changing what we eat and to experiment more. It does help to know our body. I also think that it is good to not eliminate specific food items from our diet completely. And it is ok to give in to the temptations sometimes -- you want to eat that thing, go eat it.

I think a little discipline is important. It can go a long way in keeping us fit and healthy and in boosting our immune system. But after a few days, it comes naturally. And you realize that you are eating the healthy foods naturally... that you are keeping away from the unhealthy foods naturally. Exercising starts to seem like another simple and fun activity. There is less stress, magically more time for everything, more happiness, and good things are happening into our lives.

That is how it has always been for me.
9 years ago
Algorithms 1 - https://www.coursera.org/course/algs4partI

Algorithms 2 - https://www.coursera.org/course/algs4partII

Like I said, the algorithms 1 course is already over. So I really recommend that you download the lectures and assignments from the first course.

If you have further questions about these Algorithms courses, I'm sure someone else that has done the course will be able to help you out, even if I may not be around to take your questions. Even Coursera has a forum of its own that you could utilize.

Good luck and happy learning!

Oh yea, and if you are interested in the future sessions of these courses for some reason, click on the future sessions in the drop down that has the dates. Coursera will let you know if that course comes again. Fortunately these courses keep coming.
9 years ago