Rashakil Fol 978 Super Senior Demiposter Team Colleague

Look at the source code for reading a web page, saving a text file, and copying data, and you'll have your answer.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

This question could have been answered by just looking at the header file and line numbers of the error.

/// This is a helper function...
  template<typename _RandomAccessIterator, typename _Tp, typename _Compare>
    _RandomAccessIterator
    __unguarded_partition(_RandomAccessIterator __first,
			  _RandomAccessIterator __last,
			  const _Tp& __pivot, _Compare __comp)
    {
      while (true)
	{
	  while (__comp(*__first, __pivot))
	    ++__first;
	  --__last;
	  while (__comp(__pivot, *__last))
	    --__last;
	  if (!(__first < __last))
	    return __first;
	  std::iter_swap(__first, __last);
	  ++__first;
	}
    }

You can see that __pivot is const.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

> It works if I changie the functor operator() to be const std::shared_ptr<Test>, but can't you always pass a mutable object to a function expecting a const object?

Uh, yeah. And your error was that you were trying to pass a const object to a function expecting a non-const reference.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

The people in this thread are apparently completely wrong, ignorant hicks.

Can I use my own code that I slapped a GPL on and provided to sourceforge in my own commercial application?

Yes.

In that way, does the GPL somehow relinquish my own rights to my IP?

No. It only gives other people rights to your IP.

Yes. You could use the code to a certain extent and with sufficient changes not be legally bound by the GPL, but by placing the code under the GPL you've given up your right to make a verbatim copy under closed source.

This is completely wrong.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

I want a programming language that i will learn very well so that I will be able to work a bit on the internet as a freelancer and do some projects for my own at free time which is generally a lot.About 5 hours a day.

Any language that is commonly used and can be learned relatively quickly would be appropriate. So learn Python and Java. It's important to learn a variety of decent languages. Generally speaking, in the world known as the "real" world, you'll encounter situations where you have to learn and use another language. For example, if you need do any web development, well gee, you'll have to learn Javascript. And HTML, which isn't a programming language. And you'll have to learn stuff about HTTP, a protocol.

I have googled over a hundred times but I cant the right programming language.I have read about php,html,html5,Java and objective-c.I want a language that can do it all.

There is no "right programming language" There is no language that can "do it all." When I wanted to write iPhone applications I used Objective-C. If I wanted to write an Android application, I'd use Java. When I wanted to write some quick throw-it-together script I used Perl. When I wanted to write a web application and didn't know any better, I used PHP. Now I'd use Python, and of course, Javascript for the front-end. Or Coffeescript. When I want to write other kinds of programs, I'll use Python or C++ …

Rashakil Fol 978 Super Senior Demiposter Team Colleague

A flat text file could have an index too. You can't be too strict about these sorts of definitions.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Okay but what I meant was the the output of merging is as big as the input. So if you measure the output as being 1B you're going to have a nonsensical measurement.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Uh, what? What is a "block"? Also the output of mergesort is as big as the input, it's not half as big the way you say.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

f is in Theta(g) if and only if f is in O(g) and g is in O(f).

Hope that helps.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

I'd definitely like to actually point out what a ripoff this Elitebook model is. It's a 14" laptop, so let's compare it against a 14" Thinkpad, the Thinkpad T420.

You can configure the T420 with an i5-2520M and NVIDIA NVS 4200M and 1600x900 screen for $1099. That's $100 less with a better screen resolution and better GPU, and you can do the stupid face recognition login thing if you want. For $20 more you get a fingerprint reader. And there are three mousebuttons instead of two, and the keyboard is widely regarded as the best keyboard available on laptops.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

caperjack, there are several reasons. The HP Elitebook has a better graphics card, a better CPU, a better keyboard, a trackpoint mouse, and it probably comes with better technical support, and it has a better set of ports and upgradability. It USB 3, which gives faster writing to external hard drives and other devices. It can be configured with a 1600x900 screen (which any sane person would do, once you're already paying $1000). It can support 16 GB of RAM (though I wouldn't be surprised if this is in the 2x8GB configuration instead of 4x4GB). Does your Toshiba have an ExpressCard/54 slot? I bet the Elitebook's graphics card can be upgraded too.

There are reasons to get such laptops. One reason is if you want to do CPU-intensive work on it like CAD, graphic design, or some kinds of software development. Another is if you want to configure it with a lot of RAM because you need to run several VM's on the machine. People need to do this, too. I bet your Toshiba has only a 5400 RPM drive. I bet it has an HDMI port at most, not DisplayPort, and can support fewer external monitors at a given frame rate. If you get a $500 laptop today you can get a Sandy Bridge i3. You can't get an i5-2520M, which is a pretty good CPU. And you don't have a nice screen or keyboard.

Of course, that doesn't mean most businesses aren't getting ripped off by …

Rashakil Fol 978 Super Senior Demiposter Team Colleague

This review is a glorified feature list. Was it written for you by some low-level PR person at HP? Did they give you the laptop on condition that you talk about a certain set of features? Or did they let you choose a few features to leave out? Like all of the interesting ones. How is the keyboard? Is the screen a good quality screen, does it look nice at an angle? Is the touchpad good? Do the mouse buttons have a nice click? What is the actual battery lifetime? How long does it take to recharge? It seems to me like you didn't actually test the battery under any controlled conditions because you don't have the actual time it takes to run down. And you should not be complaining about only being able to spec it to 4 GB online. Everybody knows that it's always cheaper to get the minimal configured RAM and then buy the rest separately. Are we seriously praising a laptop's battery lock?

Adding that extra layer of protection HP is known for.

English, do you speak it?

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Uh, learn how variables work.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Certainly. Certain inputs to your algorithm affect the behavior of the code's running time. An upper bound on the running time can usually be expressed by some measurement of the size of the input, either by the value itself or the number of elements or whatever. Suppose you have one such input and its size is n.

Then figure out some function A(n) which describes an upper bound for the number of "operations" the algorithm would take when the input is of size n. That's where an "operation" is a primitive operation that takes a CPU a bounded amount of time, such as adding two fixed-width integers or reading and writing from memory.

Then take the function A and figure out a simple function f of the same complexity, i.e. so that we can say there's three positive numbers C and D and n_0 such that D f(n) <= A(n) <= C f(n) for all n greater than n_0. For example if A(n) = log10(n) + 5, we might pick f(n) = log(n).

Then we can say that the running time of the algorithm is O(f(n)).

Rashakil Fol 978 Super Senior Demiposter Team Colleague

> My question is, if I decide software engineering is what I want to do, will having an Oracle certification be helpful? I would assume database knowledge is useful when developing software?

Knowledge of SQL (including all knowledge about making efficient databases and software that uses them) is very useful for a software engineer, and I recommend that you learn how to use it and get practice making programs that use it. Evidence that you know how to use SQL, or claims that you can use it, can be useful for your first programming job. It is always better to be able to show actual code, instead of certifications you've passed. SQL is quite simple and learning it is not impressive, but that you know it is evidence that you'd be of more immediate use in a software engineering role, and I mean not from direct knowledge but as evidence that you can use tools and get ugly stuff done.

> On a side note... I already have a B.S. in accounting. It appears easier for me to transition into the IT field with some SQL knowledge (doing systems analyst work). This is another reason I am considering the Oracle cert.

I'm a software engineer so I don't know much about that field. I do know that it's very easy to transition into software engineering, if you're good at it. You don't need any degree or qualifications to become a software engineer, you just need evidence that …

Rashakil Fol 978 Super Senior Demiposter Team Colleague

> Moreover, I somewhat find the way in which the depth (height) relates to the number of nodes at each level confusing to me. Perhaps because I think of how the Heap is represented both as an array and as a tree. But I know that with every deeper i, the Heap splits children such that its got 2^i nodes at each i.

Okay. It seems to me that you get it. At the end of this post I will show an exact calculation of the heap's height.

> The while loop runs in O(log n) time because the worst case depth an element could have is the whole height of the tree.

Also there's implicit in your argument the fact that the body of the while loop takes O(1) time. It's perfectly reasonable that you omitted this obvious fact in writing down your explanation. This and the rest of your argument are correct.


Now here's how I would calculate the exact height of the complete binary tree. Let's first note that the first k levels of the tree can hold 1, 2, 4, 8, ..., 2^(k-1) nodes, respectively. Then the first k levels of the tree can hold a total of 1 + 2 + 4 + 8 + ... + 2^(k-1) nodes. That sum equals 2^k - 1. So, if we have a complete tree with n nodes, where 2^k <= n < 2^(k+1), the first k levels of the tree cannot …

Rashakil Fol 978 Super Senior Demiposter Team Colleague

So it seems like you understand most things, but you are thinking somewhat fuzzily and imprecisely. You say "around O(log n)", you count some leaf nodes as internal nodes in your answer to the second question, and you said a balanced binary tree is log n height with a question mark.

So I have to wonder these things: Why are you unsure? Why are you saying "around" O(log n)?

Why can't you compute the running time of that function?

is what I am wondering. If you know the height of a balanced binary tree, you should be able to compute the running time of the while loop. If you know the running time of Extract-Min, you should be able to compute the running time for the entire function. If you don't know what running time means, or don't know the math, you need to learn that.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Why aren't you sure it's O(log n)? (It seems totally obvious to me, of course I'm very familiar with this sort of thing.)

Specific questions I have to probe your understanding:

- Do you know the running time of Extract-Min? What is it?

- Do you know what shape a heap's tree looks like?

- Do you know the depth (i.e. height) of a balanced binary tree?

Rashakil Fol 978 Super Senior Demiposter Team Colleague

If a heap is stored in an array, you can access the element at a given index in constant time. I think this is what the question assumes. I don't know what it would mean by "its index" if the heap is stored using an old fashioned tree with nodes and child pointers.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

I think you misunderstand the question. What are you using the hash table for?

Rashakil Fol 978 Super Senior Demiposter Team Colleague

You still aren't being clear, just show us the code.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

No they don't. Not ones you'd want to work for.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

It's a^n b c^(n+2), and if you can't even use basic parentheses how are you even human?

PROTIP: a^n b c^n c c is the same thing.

mrnutty commented: no helpful input, OP already clarified that in his post -3
Rashakil Fol 978 Super Senior Demiposter Team Colleague

Are you going to put a workload on it that uses more than 2 GB of memory?

Rashakil Fol 978 Super Senior Demiposter Team Colleague

No, certifications are worthless, especially Microsoft certifications.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Obviously you don't need to know PHP, obviously. To be any good you need to know Javasrcipt. "AJAX" isn't really a technology, it's just a way of saying you use a certain function in browsers' Javascript API.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

[*]Passion: Entry level folks shouldn't be embittered by the field yet,

:-)

Rashakil Fol 978 Super Senior Demiposter Team Colleague

"When I grow up I want to be a webmaster!"

dean@deangrobler.com is pretty much ideal. It says it's the email for people who want to talk to you. me@deangrobler.com would be fine too, but whatever. Using dean.grobler@deangrobler.com is a great way to tell people you're infatuated with your own name.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Yes, there is. I just told you it.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

an entry level programmer should be able to read, should be able to type, and should be able to learn. Anything else is a bonus.

That's idiotic, an entry level programmer should also know how to solve algorithmic problems and math problems.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

You simulate the computer and see what happens.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Just learn to deal with Logo's syntax.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Do something involving computers.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

It depends on the company. What you've listed are all basic pieces of knowledge that don't tell anybody whether you're a good programmer or not. Any reasonable company would be happy to hire a good C programmer, for example, if they wanted somebody good at writing C++. Certainly such a programmer would have experience in other languages that gives him a worldview that translates to C++. There are no good C programmers that only know C.

The criteria for entry level programmer at companies that want and can recognize and get good programmers is different than that for companies that are retarded.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

I am a very intelligent person...

Apparently not as intelligent as you think you are.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Would it be plagiarism if the code were in a tutorial written in HTML?

Why do you think a video would be any different?

It's as if there are people walking around without any sense of morality...

Rashakil Fol 978 Super Senior Demiposter Team Colleague

A.1. It depends.

A.2. It depends.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

There is no such thing as separation compilation. Maybe you mean separate compilation. It's where you compile things separately and then link object files together.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Hello IT Pro's out there maybe you can help me with this. I want to know which field has more levels that can be achieved by an IT individual. I know that in Networking there are 3 levels namely CCNA, CCNP, and CCIE. But in programming, the way I see it, there's no sign of getting into a higher position or getting promoted, is there any?

There are not standardized levels of programming ability, and there is no fixed knowledge set which learning will make somebody a good programmer. In programming there are plenty of ways of getting promoted, or you could just pull a bigger salary without getting promoted, simply by being better at what you do thus being more valuable. You might notice that people who might be called "programmers" that write code have salaries or incomes ranging from $50k to $300k in the U.S., and just to be clear, that's not counting entrepreneurs or people who work in finance, and $300k is not a real upper bound.

If you can say "I am good at foo" for values of foo that require a particular amount of intellegence or focus or that are particularly rare, and if you can give evidence that you are in fact good, then supply and demand will let you negotiate a high salary. And there's this tack you could take, that's a good article.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Being good at designing software requires being an analytic person. It's not a completely separate trait. (There are analytic people who can be bad at designing software though, like the archetypal too-smart-for-his-own-good software developer who doesn't need to make things simple and thus doesn't know how.) There is no escape from the need to be smart.

Fortunately you can get smarter with effort.

Edit: But no, being a "Software Engineer" does not mean you're the one designing the software.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

There are two possibilities for each variable.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Dont understand. Do u have to get your project certified or something? How do people trust that u have done some program??

If it's on Github, they can see that you have done it.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

It's where you write code that does something.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Java.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

I see. So you want me to contribute atleast some lines of code to the open source projects at github or sourceforge and mention that in resume?? Thanks for the advice. Now I can stop thinking about getting myself certified.

Actually I'd recommend making your own projects. But that depends on what you'd rather do.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Well, Im a college junior. IF I get a certification, say OCJP, now will it be useful when I apply for a job for the first time?

Oracle Certified Java Programmer? Useless. If anything it would count against you. What's much more useful is writing some fun code and putting it up on the web, on your personal website or on a Github account (or Bitbucket, whatever), and mention these things in a section of your resume. I think putting it on a personal website is better, since a lot of candidates have "github accounts" that just contain projects they've forked with very few personal contributions.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

They're all good. Since you're familiar with C# you might want to make your web app in C# using the MS MVC framework. Since you're familiar with Java, using Scala would be an excellent choice. I'd say these are your top choices.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Getting linear time is impossible unless you have some hard limit on the size of the values you're sorting. If you do have such a limit, than linear time is ordinary.

Your algorithm is probably not good if it is what I think it is, since it'll be full of cache misses.

Rashakil Fol 978 Super Senior Demiposter Team Colleague

Same exact answer.

If you want a real life example: every single piece of code I've written!

Rashakil Fol 978 Super Senior Demiposter Team Colleague

With some employers the question is, "fraud or murder"? Fraud is unacceptable, of course, but murder? That could be understandable. Drug possession could be, too. It might depend on the drug.

Your biggest superficial drawback is certainly your inability to put together complete sentences. As for non-superficial drawbacks, being bad at IT security, if it happens to be the case that you are, is much more likely to hold you back than your criminal record. You're best bet to be much better at everything related to IT security than other people are, in order to overcome your criminal record.