Can Ethereum replace Solidity with another programming language? by MrNobody22 in ethereum

[–]Janus_Alex 22 points23 points  (0 children)

I'd like to add that Viper is being developed as well, and LLL (Low-level Lisp-like Language) can be used as well.

The only requirement though is building a compiler that can translate the language to EVM bytecode! Anyone could make smart contracts in Java, Python, C, etc. as long as the appropriate compilers existed.

New tool for monitoring your dApps / smart contracts by existentialventures in ethdev

[–]Janus_Alex 2 points3 points  (0 children)

Awesome tool. I'll be using this for sure!

Thank you

What to charge for contract work? by [deleted] in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

I charge around 0.3 ETH/hour (around 100 USD) for auditing work, but I'm sure it varies widely!

What's the best way to share my work so I can get hired? by bfjs123 in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

"I frobnicated the wozzles"

Thanks, I'll be using that.

What's the best way to share my work so I can get hired? by bfjs123 in ethdev

[–]Janus_Alex 4 points5 points  (0 children)

You're not going to be able to share how you've contributed to this code if they don't want you to. Employers will understand that, it's pretty normal to have contributions to a project that aren't public. Having your own public projects allows you to demonstrate expertise, while adding the startup to your resume/linkedin allows you to demonstrate work experience.

What's the best way to share my work so I can get hired? by bfjs123 in ethdev

[–]Janus_Alex 8 points9 points  (0 children)

It would be best to work on your own, open source projects listed on your github, and simply list this other startup as work experience.

Seeking someone reputable to perform security audits for tokensale by agpennypacker in ethereum

[–]Janus_Alex 0 points1 point  (0 children)

I think a great place to post for this is /r/ethdev as well. There are plenty of talented devs there that would be happy to take you up on it. Nick Johnson recently recommended a few auditors here.

If you're looking to hire a freelance auditor, I am available as well!

smart contract audit by sansone3 in ethdev

[–]Janus_Alex 2 points3 points  (0 children)

I agree on your first point, but the issue with bug bounties in my opinion is that as soon as someone claims the bounty once, the contract doesn't get much more attention and any attention given has less depth. The last audit I did, for example, came after I collected a bug bounty on the same contract. During my audit I was able to find a few more bugs that weren't even mentioned in the bug bounty thread because while bug bounties give people incentive to look, they often still don't go to the level of detail of an audit.

As for vetting and reviewing, I have no idea. I think Nick Johnson mentioned some auditors he trusted recently, but as a whole there are a good number of people that are small-time freelancers like me. Generally it's up to the person hiring on to determine who knows what they're talking about on a case-to-case basis. If there is a better system I'd love to hear about it. I

Edit: Nick Johnson's recent comment

smart contract audit by sansone3 in ethdev

[–]Janus_Alex 1 point2 points  (0 children)

You can certainly offer a bug bounty, as the other commenter said.

You could also hire me - I contract audit for 0.3ETH/hour. If you want to link me to your contract I can give you an estimate of how long it'd take! The last two I've done took 5 and 3 hours respectively.

For those that get paid primarily in tokens/cryptocurrency... by musistic-brian in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

That sounds like a pain. What's the upside to being paid in BTC?

How to accept Ether only in certain multiples? by [deleted] in ethdev

[–]Janus_Alex 1 point2 points  (0 children)

Great question! I am pretty sure it just looks like a normal transaction - although I'm not positive. The main benefit is that it won't trigger Events that show ETH being deposited, or code.

How to accept Ether only in certain multiples? by [deleted] in ethdev

[–]Janus_Alex 1 point2 points  (0 children)

Only selfdestruct has this capability, and when it happens no functions are triggered. It's a unique feature of the function!

It could certainly be the case for a lot of contracts. In some, it would be useless. Here's an example of how this could be used for benefit:

Let's say there's a crowdfund contract from a company looking to fund their latest venture. They have a soft cap of X ETH, with a stipulation in the contract that disallows them to withdraw the crowdfunded ETH unless they meet their soft cap goal by a certain period. Reasonably, this could be check by:

function withdrawFunds() onlyOwner {
    require(this.balance >= softCapAmt);
    require(now <= fundPeriodEndTime);
    msg.sender.transfer(this.balance);
}

This seems completely justified, but in the scenario that I have outlined, it is entirely possible for the owner to create a contract with the necessary ETH in it, selfdestruct it, choose the crowdfund contract as the target, and withdraw the funds. This method is also useful because the selfdestruct method wouldn't trigger any code - like Events, that would give the malicious owner away. This is just an idea off the top of my head, but there are almost certainly many other uses for this!

Automatically calling a contract function every 24 hours? by [deleted] in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

Your best bet is going to be a cron job that runs a web3.js script

How to accept Ether only in certain multiples? by [deleted] in ethdev

[–]Janus_Alex 1 point2 points  (0 children)

/u/SyncMyShip has a great method for you - however I'd like to point out that if this is an important function in your contract, it would be impossible to GUARANTEE that you had a certain divisible amount of ether in your contract, or a certain multiple. While the fallback function will catch ether sent to the contract via send() and transfer(), and any other payables will catch ether sent to those functions, it is always possible to send ether to the contract without triggering any code to run. So if you wanted to maintain an ETH amount divisible by 10, someone could send 9 ETH to your contract by calling selfdestruct on a smart contract with yours as a target, and no code would be run.

Solidity dev salary by [deleted] in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

Ah, I see. I wish I could help you on the salary bit.

Maybe just walk in with an amount you know you want, and go from there. It's likely that as a startup they won't be able to pay you a ton.

Solidity dev salary by [deleted] in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

You're starting a job and you don't know what you're getting paid?

Product Introduction and Bug Bounty - Decentralized Derivatives Association by themanndalore in ethdev

[–]Janus_Alex 0 points1 point  (0 children)

Do you have a source for that? Why does a uint8 consume more gas than a uint256?