Reputation
4,560
Top tag
Next privilege 5,000 Rep.
Approve tag wiki edits
Badges
1 12 31
Impact
~334k people reached

Nov
10
comment Represent actions(verbs) in REST URI
@Jez If that's the case, the poster of the question doesn't fundamentally understand how HTTP requests work. Unless the plan is to implement a custom client that pipelines the print requests directly to a print job queue. Either way, that has nothing to do with REST.
Nov
9
comment Represent actions(verbs) in REST URI
@Shauna Triggering a print job from a HTTP request alone would be impossible due to browser security. A request for a print-friendly version is just a GET request but you still need a way to specify that the browser should render the printable version. You could specify a different URL but that would violate the principles of REST because you're not actually requesting a different resource, just a different transform of the same resource. Hence the reason for specifying the transform via a query-parameter and/or content-type.
Nov
9
comment Represent actions(verbs) in REST URI
(cont) The JSON format -- for example -- is supported natively by the browser. So, when you send a HTTP request with a 'Content-Type: application/json' the browser also validates the response data (or rejects malformed responses). AFAIK, XML has always been natively supported and the W3C is currently working on a spec for CSV validation support.
Nov
9
comment Represent actions(verbs) in REST URI
@Jez Of course not. Print job management depends on the client, as it always has. Browsers are sandboxed to disallow direct hardware access for security reasons, so what your suggesting would be impossible. What I was explaining above is a simple HTTP route to GET a 'printable version' of the content. Which is a common use case for any system requires PDF/paper based tracking. Ever used a website to get a printable version of an invoice, account ledger, etc? Chances are, it probably used a strategy similar to the one above.
Oct
19
comment Is Bubble Sort the slowest sorting algorithm?
Why this is not a good question. If you're trying to find, as you say, "the least efficient sorting algorithm" you'd have to account for all of the solutions that are intentionally inefficient. Even then, it's a matter of opinion because the number of possible solutions is endless.
Oct
19
comment Running time of the specified Bubble Sort Algorithm
As a new user, keep in mind that posting homework questions is strongly discouraged here. With that said, it looks as though you framed the question in a way that seeks an approach to finding the solution yourself, rather than asking for the solution. So, there's no issue.
Oct
19
comment Why is multithreading often preferred for improving performance?
@user1849534 The benefit of using the network is that the worker subprocess(es) can exist locally and/or be migrated to external nodes (ie horizontally scaled). An added benefit of using the network is, it's platform agnostic (ie not OS specific). The downside of using the network is, they're generally slower than IPC due to the additional network stack overhead.
Oct
19
comment Why is multithreading often preferred for improving performance?
+1 for an obviously well thought out answer. I'd lend caution to taking Microsoft's suggestions at face value though. Keep in mind that .NET is a synchronous-first platform, therefore the ecosystem is biased to providing better facilities/documentation that support building synchronous solutions. The opposite would be true for an async-first platforms like Node.js.
Sep
8
comment C# open-source framework for multithreaded task management
@ideasman42 I wrote this answer back when I primarily used SourceForge and Google Code for hosting. I think GitHub handles this better by making it trivial to fork an existing projects when the author goes quiet. My own projects have gone dead for long periods of time when I was busy with life but I usually reclaim them by pulling the changes and improving the code further. It's hard to get over the idea that nobody 'owns' an open source project except those who are willing to put in the work.
Sep
8
comment What is the best way to design a web site to be highly scalable?
@AshishGupta Exactly, the only difference in partitioning the data to a separate service is what the user receives. Instead assembling the html + content on the server. The user receives data and html separate and the client browser handles the reassembly. With data as a separate service it also becomes possible to make it available for mobile applications or other non-web-based clients (ex smart tv apps).
Jun
6
comment C# open-source framework for multithreaded task management
@ideasman42 Good point. Older projects and *nix apps/libs usually use GPL/LGPL. Javascript projects are usually MIT. PHP modules and Apache based stuff use the APL, etc...
Feb
21
comment Efficient way to map changes in a filesystem hierarchy
Quick question. On folder mtime, do changes that occur in subfolders propagate up the hierarchy or does it only reflect the immediate dependents?
Feb
21
comment Efficient way to map changes in a filesystem hierarchy
OK. The system will use Windows Server (NTFS) locally and a *nix instance remotely on AWS. The database is required to make the metadata searchable and it can be replicated to a remote server. The eventual goal is to provide an API for searching and accessing files online from many local nodes.
Feb
21
comment Importance of learning to google efficiently for a programmer?
-1 The obvious answer is obvious. I thought this site is about asking insightful questions about programming, not seeking affirmation on very general questions with a 'for programmers' suffix.
Feb
20
comment With only backend development experience, how do I go into frontend development (js, html, css)?
HTML is easy, CSS is quirky and it takes a lot of practice to get comfortable with the static/relative/absolute positioning models. Javascript is fun because it has loose rules but a lot of it's strengths don't start to make sense until you really start to understand the functional/protypical aspects of the language. Angluar is a strange beast as it does a lot of magic with the DOM. Even with a solid understanding of JS it would be a pain (and a waste of time) to re-create its functionality. To understand how it's used you first need to break the urge to do MVC on the server-side.
Feb
20
comment With only backend development experience, how do I go into frontend development (js, html, css)?
@Knerd Why the assumption that you can't combine node.js with angular. It just depends on the structure of the app. angular provides client-side routing, node.js provides server-side routing. Angular can be used to structure the UI, while node can be used to provide the data-layer via a REST API (or equivalent).
Jan
5
comment Represent actions(verbs) in REST URI
@RobY OK, that makes sense. As an example, PUT could be used to represent a SPROC designed to enter data into a database. Whereas, a POST could make up the intermediate steps and mutations required to collect/prepare that data. The design of the POST operation could change or be replaced as the design evolves but the PUT operations represent the model which (ideally) shouldn't change. I'd update my answer but this one already does a great job of explaining the difference.
Jan
5
comment Represent actions(verbs) in REST URI
@RobY I was assuming that the 'print' action wasn't going to handle process of physically printing the document as that would be better served by the browser and print driver. Rather, the media/print output would return a 'print friendly' representation of the document. Therefore, idempotency is maintained. Good point tho, sending print jobs across the internet in a stateless manner would be a bad time.
Dec
16
comment can a closed source commercial software make system(3) calls to GPL applications (not libraries)?
@AquariusPower By 'incorporated' they're referring to code that is copy/pasted from a GPL application into another or an application that is distributed with a library that came from GPL application. Unless, the library is licensed under LGPL. The same rule applies to media asstes, etc. You could, for instance, create a wrapper that extends a GPL application by wrapping/automating it's usage (ex GUI for FFMPEG) but the user would have to acquire the GPL application separately on their own since distribution is not allowed in that case.
Dec
16
comment Why isn't software abstract on a grander scale?
This! So much this. Try debugging a weird side effect that pops up in a winforms GUI only to find out -- after digging through 15 layers of nested classes -- that some value was invalid and defaulted to null. Making all code a layer cake of abstractions sounds simple in theory. In practice, it's much easier to have a special purpose modules designed and perfected to perform a particular tasks.