|
Thread Rules 1. This is not a "do my homework for me" thread. If you have specific questions, ask, but don't post an assignment or homework problem and expect an exact solution. 2. No recruiting for your cockamamie projects (you won't replace facebook with 3 dudes you found on the internet and $20) 3. If you can't articulate why a language is bad, don't start slinging shit about it. Just remember that nothing is worse than making CSS IE6 compatible. 4. Use [code] tags to format code blocks. |
On June 16 2018 19:01 Acrofales wrote: I assume that's c++. In which case, what's the problem? You promise to return a char array and you do.
I think what he's asking is why you can return a pointer to something who's scope should only be within the function itself. iaretehnoob answered why this specific case works.
|
On June 16 2018 19:30 Excludos wrote:Show nested quote +On June 16 2018 19:01 Acrofales wrote: I assume that's c++. In which case, what's the problem? You promise to return a char array and you do. I think what he's asking is why you can return a pointer to something who's scope should only be within the function itself. iaretehnoob answered why this specific case works.
Yes. Also, pointer isn't the same thing as an array. Arrays could decay and become pointers, but the opposite isn't true. You could treat a pointer as if it points to a sequence of elements but I think arrays and pointers are different.
Pointer points to something that is already in memory. I guess string literals are somehow in memory for pointers to work. Otherwise, how do you point to something which you've not allocated memory for?
On June 16 2018 19:19 iaretehnoob wrote:Show nested quote +On June 16 2018 18:00 sc-darkness wrote:Does anyone know why this works at all? It feels unsafe yet it works. const char* SomeMethod() { return "Hello!"; }
Pointer points to something that must exist. Does compiler do some magic? string literals are special and exist for the entire duration of the program.
That probably makes sense now. They're like static objects then.
|
This is somewhat programming related, but does anyone know of good replacements for f.lux? It's gotten too heavy for what should be a very simple application.
|
28057 Posts
On June 18 2018 12:44 WarSame wrote: This is somewhat programming related, but does anyone know of good replacements for f.lux? It's gotten too heavy for what should be a very simple application. I use redshift on linux. It's incredibly minimalist.
If you're on windows 10 the native blue light app is actually alright. I heard Iris is good but idk how heavy the app is.
|
If anybody is interested, I recently came across an open source machine learning tool.
https://ml5js.org/
Friendly Machine Learning for the Web. ml5.js aims to make machine learning approachable for a broad audience of artists, creative coders, and students. The library provides access to machine learning algorithms and models in the browser, building on top of TensorFlow.js with no other external dependencies.
The library is supported by code examples, tutorials, and sample datasets with an emphasis on ethical computing. Bias in data, stereotypical harms, and responsible crowdsourcing are part of the documentation around data collection and usage.
I haven't touched it much, but I assume I will in the future.
|
On June 18 2018 12:55 TheEmulator wrote:Show nested quote +On June 18 2018 12:44 WarSame wrote: This is somewhat programming related, but does anyone know of good replacements for f.lux? It's gotten too heavy for what should be a very simple application. I use redshift on linux. It's incredibly minimalist. If you're on windows 10 the native blue light app is actually alright. I heard Iris is good but idk how heavy the app is. Thanks! For some reason I don't feel the need as bad on Linux, but I'll check out Redshift too.
|
I need some advice on DB design/interfacing.
I am using Flask with flask_sqlalchemy as an ORM and postgresql as a DB.
My flask_sqlalchemy Model defines the columns and tables. Should it also include the logic to CRUD objects? If not, where is the ideal place for that to go? In a db.py file?
|
On June 19 2018 09:18 WarSame wrote: I need some advice on DB design/interfacing.
I am using Flask with flask_sqlalchemy as an ORM and postgresql as a DB.
My flask_sqlalchemy Model defines the columns and tables. Should it also include the logic to CRUD objects? If not, where is the ideal place for that to go? In a db.py file?
Will need to check alchemy further but the general rule of thumb is that internal model logic should be inside the model. Any extra queries you want to perform on it should go into the repository class.
|
On June 20 2018 16:30 Manit0u wrote:Show nested quote +On June 19 2018 09:18 WarSame wrote: I need some advice on DB design/interfacing.
I am using Flask with flask_sqlalchemy as an ORM and postgresql as a DB.
My flask_sqlalchemy Model defines the columns and tables. Should it also include the logic to CRUD objects? If not, where is the ideal place for that to go? In a db.py file? Will need to check alchemy further but the general rule of thumb is that internal model logic should be inside the model. Any extra queries you want to perform on it should go into the repository class. Agree. CRUD goes in the model.
When I teach MVC to students I have some basic rules:
If it's SQL it's in the model. I don't want to see SQL in the controller, and most certainly never ever in the view. My general rule of thumb is that I should be able to switch database engines and only touch the model.
If it's HTML/CSS/JS it's in the view. I don't want to see html tags or javascript in the controller. JS you could make a case that some of it is controller, but then I'd make a case that you have a clientside view and controller, which in the grand scheme of your application is all view for the server side.
Finally, everything goes throug a controller. You call new pages by their controller, which gets the appropriate data from the model, repackages it and passes it to a view. You never call a view directly from a model, or a model directly from a view. And if you are writing any kind of logic other than how to display something (and what should happen when it is clicked on) in the view, then you are doing it wrong.
|
On June 20 2018 17:16 Acrofales wrote:Show nested quote +On June 20 2018 16:30 Manit0u wrote:On June 19 2018 09:18 WarSame wrote: I need some advice on DB design/interfacing.
I am using Flask with flask_sqlalchemy as an ORM and postgresql as a DB.
My flask_sqlalchemy Model defines the columns and tables. Should it also include the logic to CRUD objects? If not, where is the ideal place for that to go? In a db.py file? Will need to check alchemy further but the general rule of thumb is that internal model logic should be inside the model. Any extra queries you want to perform on it should go into the repository class. Agree. CRUD goes in the model. When I teach MVC to students I have some basic rules: If it's SQL it's in the model. I don't want to see SQL in the controller, and most certainly never ever in the view. My general rule of thumb is that I should be able to switch database engines and only touch the model. If it's HTML/CSS/JS it's in the view. I don't want to see html tags or javascript in the controller. JS you could make a case that some of it is controller, but then I'd make a case that you have a clientside view and controller, which in the grand scheme of your application is all view for the server side. Finally, everything goes throug a controller. You call new pages by their controller, which gets the appropriate data from the model, repackages it and passes it to a view. You never call a view directly from a model, or a model directly from a view. And if you are writing any kind of logic other than how to display something (and what should happen when it is clicked on) in the view, then you are doing it wrong.
Good explanation! What about mvvm? It's something I've never had time to learn about in any reasonable depth.
|
Magento does a great deal of MVC, and if you're interested in mvvm, vue.js is built around that pattern. However, I don't think the mvvm pattern is built for large enterprise scaling. So that's a downside.
|
Has anyone dealt with OAuth 2, any thoughts? I may have to support it soon.
|
On June 23 2018 03:53 sc-darkness wrote: Has anyone dealt with OAuth 2, any thoughts? I may have to support it soon.
Check previous page of this thread
Bonus:
|
|
I tried to add google oauth to my flask project and ran into issues. When I try to import google.auth.transport.requests.Request I get a module not found error. However, I can look with bash and see that the module is definitely in my venv libs.
My import looks like from google.auth.transport.requests import Request though I have tried other import styles, including some from their official guides. What can I be missing?
EDIT: I found out what the error was. The module requires that you have installed "requests" as a library. I thought it was referring to itself as an import or something.
|
I've been trying to setup testing for my Flask app which uses Docker and I've found it difficult.
I need some strategy advice: when/how do you run your tests? Previously I was trying to run my tests using a command in my web image, but then it would exit and cause my web image to exit. Right now I'm using a test image in my compose that uses the same Dockerfile as my web image. It is fine to exit because web will keep on running. However, this seems stupid and wasteful. What is a better approach?
|
Hmm, I've been thinking about this for a while: What's the best way to store someone's credit card information on your servers? Obviously it would need to be encrypted, but it can't just be hashed as you'll need to somehow decrypt it when it's time to automatically renew the subscription or let the user pay more easily on his next online shopping transaction. So you'll need a good encryption and a key to decrypt it, but then you're left with the problem of how and where to store the key instead...
I'm not looking for a tool or library, but more an idea on how you'd go about solving this if you had to do it all from scratch, on a surface level.
|
On July 04 2018 02:33 Excludos wrote: Hmm, I've been thinking about this for a while: What's the best way to store someone's credit card information on your servers? Obviously it would need to be encrypted, but it can't just be hashed as you'll need to somehow decrypt it when it's time to automatically renew the subscription or let the user pay more easily on his next online shopping transaction. So you'll need a good encryption and a key to decrypt it, but then you're left with the problem of how and where to store the key instead...
I'm not looking for a tool or library, but more an idea on how you'd go about solving this if you had to do it all from scratch, on a surface level. Look up industry standards is the best advice I can give you. Financial payment information is one of those things you don't want to be approaching from scratch, because it could potentially get you in a lot of trouble. Here in North America we have the PCI DSS, which is the payment card compliance standard. I don't know what the equivalent would be in Norway.
Most secure solutions I've seen involve not hosting the credit card data at all. It generally involves a 3rd party host (provided by your payment processor) who would take the initial credit card info and give you back a unique identifier that's specific to your business. Within your business, you can keep using that ID as a credit card for processing and future payments, but if anyone hacks in to your system and gets the data it's useless to them.
Edit: Apparently PCI standards are fairly global and also apply to Norway. So there you are.
|
On July 04 2018 03:35 WolfintheSheep wrote:Show nested quote +On July 04 2018 02:33 Excludos wrote: Hmm, I've been thinking about this for a while: What's the best way to store someone's credit card information on your servers? Obviously it would need to be encrypted, but it can't just be hashed as you'll need to somehow decrypt it when it's time to automatically renew the subscription or let the user pay more easily on his next online shopping transaction. So you'll need a good encryption and a key to decrypt it, but then you're left with the problem of how and where to store the key instead...
I'm not looking for a tool or library, but more an idea on how you'd go about solving this if you had to do it all from scratch, on a surface level. Look up industry standards is the best advice I can give you. Financial payment information is one of those things you don't want to be approaching from scratch, because it could potentially get you in a lot of trouble. Here in North America we have the PCI DSS, which is the payment card compliance standard. I don't know what the equivalent would be in Norway. Most secure solutions I've seen involve not hosting the credit card data at all. It generally involves a 3rd party host (provided by your payment processor) who would take the initial credit card info and give you back a unique identifier that's specific to your business. Within your business, you can keep using that ID as a credit card for processing and future payments, but if anyone hacks in to your system and gets the data it's useless to them. Edit: Apparently PCI standards are fairly global and also apply to Norway. So there you are.
Again I should stress I'm not looking to implement this myself, only a surface level of understanding about how you'd do it (or rather, how others have done it). I'm not crazy enough to put myself in a situation where I could get sued for millions because I lost a bunch of credit cards.
It seems to me like it's a catch 22. No matter what you do, you have to store something which lets you unencrypt the credit cards, which in turn can get stolen and used by hackers to do the exact same thing.
|
On July 04 2018 04:19 Excludos wrote:Show nested quote +On July 04 2018 03:35 WolfintheSheep wrote:On July 04 2018 02:33 Excludos wrote: Hmm, I've been thinking about this for a while: What's the best way to store someone's credit card information on your servers? Obviously it would need to be encrypted, but it can't just be hashed as you'll need to somehow decrypt it when it's time to automatically renew the subscription or let the user pay more easily on his next online shopping transaction. So you'll need a good encryption and a key to decrypt it, but then you're left with the problem of how and where to store the key instead...
I'm not looking for a tool or library, but more an idea on how you'd go about solving this if you had to do it all from scratch, on a surface level. Look up industry standards is the best advice I can give you. Financial payment information is one of those things you don't want to be approaching from scratch, because it could potentially get you in a lot of trouble. Here in North America we have the PCI DSS, which is the payment card compliance standard. I don't know what the equivalent would be in Norway. Most secure solutions I've seen involve not hosting the credit card data at all. It generally involves a 3rd party host (provided by your payment processor) who would take the initial credit card info and give you back a unique identifier that's specific to your business. Within your business, you can keep using that ID as a credit card for processing and future payments, but if anyone hacks in to your system and gets the data it's useless to them. Edit: Apparently PCI standards are fairly global and also apply to Norway. So there you are. Again I should stress I'm not looking to implement this myself, only a surface level of understanding about how you'd do it (or rather, how others have done it). I'm not crazy enough to put myself in a situation where I could get sued for millions because I lost a bunch of credit cards. It seems to me like it's a catch 22. No matter what you do, you have to store something which lets you unencrypt the credit cards, which in turn can get stolen and used by hackers to do the exact same thing. I'd still recommend PCI standards for theoretical information. Encryption key storage is included in the requirements, but yes, ultimately no system is every going to be completely secure. Security is always risk minimization, not risk prevention.
That's why a 3rd party credit card vault (which I think is the industry term) is a lot more secure than storing the data yourself.
|
|
|
|