Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 9 years ago.
Improve this question
I want to leave strictly desktop programming and start exploring networking. I want to make a little program that just sends data from computer A to B running the same program.
Just a few questions before I start...
1) What is a better language for net programming Python or C#?
2) Could you recommend some stuff to help me understand how data is sent over the web?
Thanks!
It really depends on what you're doing. Both Python and C# have very capable modules for network communication - I'd say you'd be equally well-off in either given no knowledge of what you're doing. The decision between Python and C# will probably come down to whether your application lends itself more to the dynamic typing of Python or the static typing of C#.
As for your second question, I've always found it interesting to look at network traffic using a packet sniffer such as Wireshark. Browse to a website in Firefox and (assuming GZip encoding is disabled in the web-browser or on the server) you'll be able to see how the data is transferred. This works for other protocols as well. Reading the RFCs for various protocols can also give you some insight. For a few examples, IRC (1459), FTP (959), HTTP 1.1 (2616). You can find them at the Internet Engineering Task Force website.
Both languages are equally capable. It is a matter of personal preference.
What resources you need will depend on the application you intend to write. The two most important things you will need to know:
The Application Layer, Transport Layer, & Internet Layers of the Internet
Socket Programming
You're diving into a very broad subject, with a lot of information. I found this book to be helpful to me.
I do not want to compare languages, but as you wanted recommendation, I recommend you python and twisted framework
I think C++ is the best, if you consider the efficiency and hardware interactions.
Related
Closed. This question is opinion-based. It is not currently accepting answers.
Want to improve this question? Update the question so it can be answered with facts and citations by editing this post.
Closed 1 year ago.
Improve this question
Having just recently gotten into embedded programming using PIC microcontrollers, I am trying to understand the difference between Bare metal, RTOS and SoC.
Online searches reveal contradictory definitions and meanings.
For example, Semiengineering state that "An RTOS is code written on bare metal" and arduino.cc state that "If you programming controller without using any [RT]OS it's a bare metal approach".
The implication is that some code written on bare metal can be considered to be RTOS, whilst others may not be.
Therefore, my question is when can embedded programming of microntroollers be considered programming of bare metal and/or RTOS? And where does SoC fit into all of this, if at all?
Any insight that anyone can provide will be very much appreciated!
(1) An RTOS is a Real Time Operating System. Implementing an operating system is not the same thing as using an operating system. It seems like you'd know whether you're programming using a Real Time Operating System or nothing. And that's the difference between using a RTOS and bare metal.
Note that the RTOS code is bare-metal programming, because it's not using any lower-level software. And then when you write your code using the RTOS, it's not bare-metal programming, because you're using the services of the RTOS.
(2) It seems like you'd know whether you're implementing an operating system or an embedded application And that's the other difference.
(3) As regards an SoC - that's a hardware category. Is there one integrated circuit containing the CPU and a bunch of associated functions (interrupt controller, maybe an MMU, peripheral interfaces, network, etc.)? Then it may be a SoC. Or are there a few other ICs providing these functions? Then it's not a SoC.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 5 years ago.
Improve this question
I'm creating an app that recognizes the songs of some web radio feeds, I would need to parse feeds to find songs, I found a paid service (ACRCloud) that allows you to do so, but the cost is high given the number of radios that I would like to analyze, so I searched a bit and found Echoprint, I could use it for my purpose? Would be suitable? Why don't I find the documentation ... I don't know, maybe there are better solutions? Thank you
Echoprint would generate good fingerprints for your usage (exact copy of musics, recognition time in the scale of tens of seconds).
However, you will have to maintain a database of known musics. Which is difficult to keep up to date.
The mothership of Echoprint, the Echo Nest, offered music recognition in the past, but this seems now over. Though, a server designed as fingerprint storage and retrieval is free to use.
What you could do to generate a database is:
fetch metadata from some streams, when available.
download the youtube version of those musics. See the youtube-dl tool for that (disclaimer, this may be violating the TOS of youtube)
inject fingerprints in the echo nest server.
This could bootstrap efficiently your system. But you may have a hard time reaching the performance of paying services like ACRCloud and similar. It depends on your requirements.
We run a service for our website which follows 9 radio stations, using the internet stream of those stations. We show real time what is playing on those stations.
The library (in c#) and a database of 1.3 million fingerprints can be found at:
https://github.com/nelemans1971/AudioFingerprinting
Example programs include the software to follow a radio station.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 6 years ago.
Improve this question
I know some of you will discourage scanning through a web page, unfortunately, it is a requirement.
I want to view my options in the situation, and maybe, some of you may have already gone through this and had a workable solution.
Problem is, we need to have a universal approach in scanning documents through the webpage without any external helper apps that does this for us.
I know this is a tall order, I would simply want to know the best next thing.
Thank you!
You can't do it with just a browser and JavaScript, full stop, you'll need to include something else -- a Java applet, a .Net "No Touch Deployment" application (mostly IE-only), a Flash or Shockwave application, something like that. In the Windows world, Flash has a huge installed base on browsers, but I don't know if it can do what you want (not knowing much about Flash). Next up would be a signed Java applet.
The user will then need to give your thingy permission to access local resources, a process that varies depending on the technology used. It's quite a simple process with a signed Java applet, much more involved and awkward for the end user with a .Net "No Touch Deployment" app.
I've seen this done with a Java applet successfully. ActiveX might also work.
Here is what appears to be a working TWAIN applet.
Here is question with answers related to TWAIN and Java.
I've successfully used Morena for implementing web scanning. It requires only that the user have Java installed. (With older versions of Java you can run out of memory when processing the scanned image. I had to cut large images into 100 pixel strips and send them individually to the server.)
Here's a small scan-to-email project that I used Morena with.
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 4 years ago.
Improve this question
For a system I'm working on I need to call a list of Phone numbers programatically when something breaks. Basically a simple phone based alert system, and am guessing it could be done with Skype, but I'm wondering if anyone has experience doing this, Skype or not.
Anyways links and or tutorials would be great help.
I would go with sms. You can have a clearer error's message than skype's phone generated with robotic voice :)
Just search google with "sms gateways", for the operator's list. Almost all of them give api and code examples for interfacing.
You might consider a system like Twilio instead. Try the demo account (1000 free minutes) - it's very powerful and easy to set up.
You could do it with any other VoIP system; hacking it together with SIP or XMPP networks should be fairly easy as they are standards with libraries avaialble for many platforms.
But Skype is a closed network, with a closed (and heavily protected) binary client. Even if you did manage to work out how to interoperate with it (and many have failed), they could just update the client code to keep you locked out. Skype is no fun at all.
About the best you could manage at the moment would be to use UI automation to simulate interaction with the real Skype client. (yuck.)
Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers.
We don’t allow questions seeking recommendations for books, tools, software libraries, and more. You can edit the question so it can be answered with facts and citations.
Closed 7 years ago.
Improve this question
I'm looking to write a small proxy server for kicks and giggles.
Apart from the options in libWWW, can anyone recommend any opensource options for the HTTP server and client code? Thinking of a library of some kind similar to libWWW.
Chosen language is C/C++ but open to Java, C#, Python... etc. :-)
If you choose the Java way, take a look at Jetty. It's full featured HTTP server which is very easy to embed and pretty lightweight.
Jetty is great indeed. However, if you want a proxy server, take a look at RabbIT proxy. It is well designed and amenable to modifications. e.g. We implemented a filter that serialized certain XML text in requests to Java objects, and similarly deserialized responses.
There's a wide array of choices depending on what you want to do. For example, to handle NTLM authentication, you have cNTLM (C) or NTLMAPS (Python) or jCIFS library (Java).
If you're considering to make your proxy server in Asynchronous way in C/C++.
Here's some of open source projects you might want to check out:
libevent provides one - good choice for light use. but recursion on large data is not provided..
mongoose - nice API, good abstraction, but it uses select() and realloc() based i/o buffer, Also dual license for commercial use.
libevhtp - developed as a replacement of libevent's http module.
GNU's libmicrohttpd - good feature set.
libasyncd - I'm the author. It features general asynchronous framework and comes with HTTP handler.
I'm only able to make 2 links on my answer, but you can easily find the project homes by googling them.